Estou adicionando alguns aliases ao .bashrc para desencorajar as pessoas de usarem comandos padrão onde há um processo mais complexo envolvido na obtenção do resultado desejado. Mas como posso definir o código de saída caso o alias seja invocado a partir de um script? Idealmente, sem gerar uma mensagem de erro espúria como "nenhum arquivo ou diretório" (encontrei isso , mas certamente existe uma maneira mais limpa?)
por exemplo
alias useradd='echo "Nope....you should be using the custom script."'
deve resultar.....
# useradd newuser
Nope....you should be using the custom script.
# echo $?
-1
#
Você deve usar uma função em vez de um alias.
Consulte No Bash, quando usar um alias, quando criar um script e quando escrever uma função? para obter mais informações sobre as limitações dos aliases e a utilidade das funções.
Observe também que, se você usar uma função ou um alias, seus usuários podem ignorá-los usando o
command
built-in ou simplesmente escapando o nome do comando como: