Quando a variável $ SHELL não muda quando eu troco de shell

3

Estou usando 'zsh' por padrão.

Mas quando estou no meu shell zsh, eu entro 'bash' para mudar para o bash, porque a variável $ SHELL não muda?

Posso fazer a tela usar qualquer shell que eu tenha antes de executar o comando 'screen'?

zsh % screen
<the shell is zsh>

zsh % bash
bash $ screen
<the shell is still bash, can I make screen to automatically start bash here>
    
por michael 16.05.2013 / 16:44

1 resposta

7

A variável SHELL (junto com algumas outras variáveis, como HOME e USER) é definida pelo processo que faz o seu login. Ela é configurada para o valor do shell de login definido no banco de dados passwd (/ etc / passwd). Não é para refletir o shell que você está usando atualmente.

A tela

usa a variável SHELL para determinar qual shell deve ser executado dentro da tela, para que você possa sobrescrevê-la, por exemplo,

SHELL=/bin/bash screen

E se você quiser que o bash seja seu shell de login em vez de zsh, você pode executar o comando chsh ( ch ange sh ell) como seu usuário. / p>     

por geirha 16.05.2013 / 17:22