如何在 MacOS 上将 'echo $SHELL' 更改为 '\bin\zsh'
How to change 'echo $SHELL' to '\bin\zsh' on MacOS
我最近从 Catalina 升级到 Big Sur 并将 shell 更改为 zsh 但是当我回显 $SHELL 时它仍然显示 /bin/bash 我如何更改这个
我要么放一个
SHELL==zsh
或
SHELL=[=11=]:a
到您的 ~/.zshenv
(这两种形式之间的区别在下面解释)。这有几个优点:
此文件仅由 zsh 处理,交互式和非交互式,因此不存在此设置被不同 shell.
拾取的风险
通过将其设置为 shell 变量而不是环境变量,以不同的 shell 编写的子进程(bash、ksh、sh、. ..) 如果愿意,可以自己设置 SHELL
变量。
通过使用形式 =zsh
,zsh 将单词 zsh 扩展为 shell 的完整路径。这假设 zsh 在你的 PATH 中,无论如何这是合理的。
如果您决定使用替代形式,[=15=]:a
,而不是 =zsh
,您将分配给 SHELL
[=33] 的路径=]当前 zsh。如果您的系统上安装了多个 zsh 版本,并且想要确保将 SHELL
设置为当前 运行.
的版本,这就会有所不同。
我最近从 Catalina 升级到 Big Sur 并将 shell 更改为 zsh 但是当我回显 $SHELL 时它仍然显示 /bin/bash 我如何更改这个
我要么放一个
SHELL==zsh
或
SHELL=[=11=]:a
到您的 ~/.zshenv
(这两种形式之间的区别在下面解释)。这有几个优点:
此文件仅由 zsh 处理,交互式和非交互式,因此不存在此设置被不同 shell.
拾取的风险通过将其设置为 shell 变量而不是环境变量,以不同的 shell 编写的子进程(bash、ksh、sh、. ..) 如果愿意,可以自己设置
SHELL
变量。通过使用形式
=zsh
,zsh 将单词 zsh 扩展为 shell 的完整路径。这假设 zsh 在你的 PATH 中,无论如何这是合理的。如果您决定使用替代形式,
的版本,这就会有所不同。[=15=]:a
,而不是=zsh
,您将分配给SHELL
[=33] 的路径=]当前 zsh。如果您的系统上安装了多个 zsh 版本,并且想要确保将SHELL
设置为当前 运行.