Kur*_*sis 33 command-line bash zsh
我正在尝试使用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 之前它不会被调用?任何帮助表示赞赏。
Jan*_*ary 50
您需要再次注销才能使这些更改生效。/etc/passwd 文件中定义的 shell 是您的登录shell :-) 因此您需要实际登录。