
Realmente me gustan los alias de bash, me molesta que cada vez que quiero agregar un nuevo alias tengo que escribir dos comandos:
echo "alias \"short-cmd\"='long-command'" >> ~/.bash_aliases
source ~/.bash_aliases
¿Hay alguna forma de crear un alias de forma permanente con un solo comando?
Respuesta1
Aquí está mi solución, la función palias
(también conocida como alias permanente):
function palias () {
if [ $# -ne "2" ] ; then
error "Usage: palias short-alias \'long-alias\'"
return
fi
alias $1="$2"
alias $1 >> ~/.bash_aliases
}
Respuesta2
Mi "solución de dos pulsaciones de teclas" (una letra y la tecla de retorno) es configurar este alias:
alias a='. ~/.bash_aliases'
Luego, cada vez que actualizo mi archivo .bash_aliases, simplemente escriboa
return
Un paso más es mantenerlos en todas las máquinas, usando github:
bup () { [ $# = 1 ] && { cp -v ~/$1 ~/Dropnot/setups; cd ~/Dropnot/setups; git fetch; git merge origin/master; git add $1; git commit -m"$1 update"; git push origin master; cp -v $1 ~; cd -; } || echo "Error - no filename passed!";}
Uso:bup [file] # file must be in ~, is usually a dot file]
Respuesta3
Hay varios archivos que se ejecutan cuando inicia sesión en su shell, incluidos ~/.bash_profile y posiblemente ~/.bashrc y ~/.bash_aliases si se hace referencia a ellos en su archivo ~/.bash_profile. Para tener un alias disponible cada vez que inicie sesión, simplemente coloque el comando que crea el alias en uno de esos archivos.
http://shreevatsa.wordpress.com/2008/03/30/zshbash-startup-files-loading-order-bashrc-zshrc-etc/