No se pueden pasar argumentos a los alias. Los alias son sólo sustituciones de texto sin más lógica.
Pero puedes utilizar funciones del shell para conseguir el mismo resultado:
function pman() {
if [ -x /usr/bin/open ]; then
man -t "$1" | open -f -a Preview
else
man "$1"
fi
}
La parte if-then-else está ahí sólo para asegurarse de que también funciona en sistemas que no son OSX.
Para definir una función, basta con incluir la definición de arriba en su ~/.bash_profile
. Su uso es idéntico al de los alias o cualquier otro comando: pman ls
.
Como señaló @stuffe en un comentario, mantener los alias/funciones en un archivo separado tiene sus ventajas (especialmente permite releer los alias/funciones en el shell actual sin ejecutar ninguna cosa de configuración desde .bashrc
o .bash_profile
). Para ello, cree un archivo separado llamado .alias
, .functions
o similar y añadir
test -e ~/.alias && . ~/.alias
a .bashrc
o .bash_profile
.