A documentação do Bash indica "Para quase todos os efeitos, as funções do shell são preferidas aliases. " Aqui está uma função do shell que substitui ls
e faz com que a saída seja canalizada para more
se o argumento consistir em (apenas) -la
.
ls() {
if [[ $@ == "-la" ]]; then
command ls -la | more
else
command ls "$@"
fi
}
Como um verso:
ls() { if [[ $@ == "-la" ]]; then command ls -la | more; else command ls "$@"; fi; }
Saída de canal automaticamente:
ls -la