Um shell interativo é simplesmente qualquer processo de shell que você usa para digitar comandos e obter a saída desses comandos. Ou seja, um shell com o qual você interage.
Assim, seu shell de login é interativo, assim como qualquer outro shells que você iniciar manualmente, conforme descrito no trecho que você citou em sua pergunta. Por outro lado, quando você executa um script de shell, é iniciado um shell não interativo que executa os comandos no script e, em seguida, sai quando o script é concluído.
O shell Bourne pode ser usado como um shell interativo, assim como bash
ou tcsh
. De fato, muitos sistemas, como o FreeBSD, usam sh
como o shell padrão do usuário. Conchas modernas como bash
, zsh
, tcsh
, etc possuem muitos recursos que o Bourne shell não possui, que os tornam mais confortáveis e convenientes para uso interativo (histórico de comandos, conclusão, etc).
Shells interativos não-login (isto é, shells que você inicia manualmente a partir de outro shell ou abrindo uma janela de terminal) não lê seus arquivos .login
ou .profile
. Estes são apenas lidos e executados por shells de login (shells iniciados pelo processo de sistema login
, ou pelo seu gerenciador de exibição X), portanto os comandos e configurações que eles contêm são aplicados apenas uma vez, no início de sua sessão de login. Então, quando você inicia um terminal, o shell que ele gera para você não lê seus arquivos de login ( .login
para shells de estilo c, .profile
para shells de estilo bourne), mas lê o .cshrc
,% arquivos.bashrc
etc.