Pregunta:
Si ejecuta el comando watch
contiene un alias, no expandirá el alias. He intentado tanto con comillas simples como con comillas dobles, de hecho, con el siguiente alias:
# alias ll
alias ll='ls -l --color=tty'
El siguiente comando fallará
# watch ll
sh: ll: command not found
¿No debería funcionar la expansión de la línea de comandos en este caso?
Respuesta:
Los alias solo se expanden como el primer argumento, o después de otro alias con un espacio al final del comando.
Desde el help alias
bash
:
Un espacio final en VALUE hace que se verifique la sustitución de alias de la siguiente palabra cuando se expande el alias.
Para hacer esto, intente lo siguiente:
alias watch='watch '
alias ll='ls -l --color=tty'
watch ll
Tenga en cuenta que algunas versiones de colores de bandas de watch
de forma predeterminada, en algunas versiones esto se puede detener usando --color
o -G
.