dotfiles/functions

74 lines
1.1 KiB
Text

function aws-profile {
if [ $# -eq 0 ]; then
echo Current AWS Profile: $AWS_DEFAULT_PROFILE
else
export AWS_DEFAULT_PROFILE=$1
export AWS_PROFILE=$1
fi
}
function g {
if [[ $# > 0 ]]; then
git $@
else
git status
fi
}
function insert-sudo {
zle beginning-of-line
zle -U "sudo "
}
function port-forward {
if [ $# -lt 2 ]; then
echo Usage: port-forward HOST LOCAL_PORT \[REMOTE_PORT\]
else
ssh $1 -R ${3:-$2}":localhost:"$2 -g
fi
}
function gitignore-io {
curl https://www.gitignore.io/api/$@
}
function git-date-added {
if [ $# -eq 0 ]; then
echo Usage: git-date-added FILENAME
else
git log --format=%aD $1 | tail -1
fi
}
function run {
if [ $# -lt 2 ]; then
echo Usage: run NUMBER COMMAND
else
number=$1; shift
for i in `seq $number`; do
$@
done
fi
}
function npm-exec {
(PATH=$(npm bin):$PATH; eval $@;)
}
# lazy loading
function rbenv {
eval "$(command rbenv init -)"
rbenv "$@"
}
function nodeenv {
eval "$(command nodenv init -)"
nodenv "$@"
}
function pyenv {
eval "$(command pyenv init -)"
eval "$(command pyenv virtualenv-init -)"
pyenv "$@"
}