如何防止 MacOS 终端启动多个 shell 进程

如何防止 MacOS 终端启动多个 shell 进程

我开始在 MacOS Big Sur 上使用 Z shell。我通过 更改了默认 shell chsh -s /bin/zsh。当我启动终端时,我看到两个进程正在运行:

$ ps
CMD
-zsh
/bin/zsh

当我启动终端程序(从应用程序)时,我还看到以下输出:

Last login: xxxx
<USER>@macbook ~ % /bin/zsh
<USER>@macbook ~ %

我已将所有~/.*rc文件移至备份目录并继续观察此行为。此外,我将默认 shell 更改回 bash viachsh -s /bin/bash并继续看到类似的行为:

Last login: xxxx

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
macbook:~ <USER>$ /bin/zsh
<USER>@macbook ~ % ps
CMD
-bash
/bin/zsh

此时,我不确定下一步要尝试什么。有任何想法吗?

答案1

事实证明,这种行为是由于我在 MacOS 终端应用程序中配置的配置文件之一造成的。导航到设置页面并取消选中“运行命令”框解决了我的问题:

Terminal => Preferences => Profiles => Shell => Startup Section 
=> Run Command (un-check box)

相关内容