如何在MacOS上将`echo $SHELL`的输出修改为`/bin/zsh`
修复步骤
步骤1:确认zsh的合法路径
先查看系统允许使用的shell列表,确认zsh路径有效:cat /etc/shells
正常输出会包含/bin/zsh(系统自带zsh),如果是通过brew等方式自行安装的zsh,还会出现/usr/local/bin/zsh这类自定义路径,记录你要使用的zsh路径即可。
步骤2:修改用户默认登录shell
$SHELL对应的是系统层面配置的用户登录shell,仅修改终端的默认启动shell不会更新这个变量,需要用系统标准命令chsh修改配置:
- 使用系统自带zsh的用户执行:
chsh -s /bin/zsh - 使用自行安装zsh的用户替换为对应路径即可,示例:
chsh -s /usr/local/bin/zsh
执行命令时按照提示输入当前用户的登录密码,回车确认即可完成修改。
步骤3:验证生效
修改完成后完全关闭所有已打开的终端窗口,重新启动新的终端,执行echo $SHELL即可返回正确的zsh路径。
注意:不要强行在
.bashrc/.zshrc等配置文件中手动覆盖SHELL变量,会导致依赖系统登录shell配置的工具出现兼容性问题,chsh是官方标准的修改方式。
内容的提问来源于stack exchange,提问作者user790049
相关产品推荐
相关产品推荐

