我正在尝试使用chsh
命令将我的 shell 永久更改为 zsh ,但它不起作用。
zsh 已安装(通过 apt)并且当我直接从 bash 提示符终端调用它时工作正常。但是默认情况下我无法让 zsh 在终端中加载,并且 chsh 正在做一些奇怪的事情:
$ echo $SHELL
/bin/bash
$ which zsh
/usr/bin/zsh
$ chsh -s /usr/bin/zsh
Password:
$ echo $SHELL
/bin/bash
$ grep kurtosis /etc/passwd
kurtosis:x:1000:1000:kurtosis,,,:/home/kurtosis:/usr/bin/zsh
Run Code Online (Sandbox Code Playgroud)
看来 chsh 已设法正确更改 /etc/passwd,但没有正确更改 $SHELL env 变量。因此,新终端总是以 bash 而不是 zsh 开始。
我不知道去哪里解决这个问题。 .bashrc
,即使在指定 shell 之前它不会被调用?任何帮助表示赞赏。
我默认使用'zsh'。
但是当我在我的 zsh shell 中时,我输入 'bash' 切换到 bash,为什么 $SHELL 变量没有改变?
在执行“screen”命令之前,我可以让 screen 使用任何 shell 吗?
zsh % screen
<the shell is zsh>
zsh % bash
bash $ screen
<the shell is still bash, can I make screen to automatically start bash here>
Run Code Online (Sandbox Code Playgroud)