Para shells, prefixing argv [0] com um traço é uma forma tradicional de solicitar que ele seja um "shell de login" (equivalente a, por exemplo, bash --login ). Os shells de login diferem dos "regulares", pois usam um script de inicialização diferente (por exemplo, ~/.profile em vez de ~/.bashrc ) - ele pode mostrar uma saudação, verificar email, iniciar ssh-agent e assim por diante ... em outras palavras, tarefas que só precisam ser feitas uma vez.
Normalmente, o shell de login precisa ser informado manualmente para carregar .bashrc usando:
. ~/.bashrc
ou:
source ~/.bashrc
no final do script ~/.bash_profile .