-
login shell: Um shell de login faz login no sistema como um usuário espiificado, necessário para isso é um nome de usuário e senha. Quando você apertar ctrl + alt + F1 para logar em um terminal virtual obtido após o login bem-sucedido: um shell de login (interativo). Arquivos de origem:
-
/etc/profilee~/.profilepara shells compatíveis com Bourne (e/etc/profile.d/*) -
~/.bash_profilepara bash -
/etc/zprofilee~/.zprofilepara zsh -
/etc/csh.logine~/.loginpara csh
-
-
shell não-login : Um shell que é executado sem efetuar login, necessário para isso, é um usuário atualmente logado. Quando você abre um terminal gráfico no gnome, ele é um shell não interativo (interativo). Arquivos de origem:
-
/etc/bashrce~/.bashrcpara bash
-
-
interactive shell: Um shell (login ou não-login) onde você pode interativamente digitar ou interromper comandos. Por exemplo, um terminal gnome (não-login) ou um terminal virtual (login). Em um shell interativo, a variável de prompt deve ser definida (
$PS1). Arquivos de origem:-
/etc/profilee~/.profile -
/etc/bashrcou/etc/bash.bashrcpara bash
-
-
shell não-interativo : Um shell (sub) que provavelmente é executado a partir de um processo automatizado que você não verá nem input nem outputm quando o processo de chamada não o manipula. Esse shell é normalmente um shell não-login, porque o usuário chamador já efetuou login. Um shell executando um script é sempre um shell não interativo, mas o script pode emular um shell interativo solicitando que o usuário insira valores. Arquivos de origem:
-
/etc/bashrcou/etc/bash.bashrcpara o bash (mas, na maioria das vezes, você vê isso no início do script:[ -z "$PS1" ] && return. Isso significa que não faça nada se for um shell não interativo) - dependendo do shell; alguns deles lêem o arquivo na variável
$ENV
-