Isso significa que é um shell de login.
De man bash
:
A login shell is one whose first character of argument zero is a -, or one started with the --login option.
(Na terminologia bash
, o argumento "zeroth" é o nome do comando que, no seu caso, foi bash
.) bash
usa isso como um sinal para executar atividades de login, como executar .bash_profile
, etc.
Uma maneira que o traço pode ser adicionado automaticamente é se o shell é iniciado com exec
. Do manual de Bash :
exec [-cl] [-a name] [command [arguments]]
[...] If the
-l
option is supplied, the shell places a dash at the beginning of the zeroth argument passed to command.
Exemplo
Compare essas duas tentativas de executar o comando nonexistent
. Primeiro sem -l
:
$ exec bash
$ nonexistent
bash: nonexistent: command not found
E, segundo, com:
$ exec -l bash
$ nonexistent
-bash: nonexistent: command not found