在 MacOS 上不关闭的情况下重启终端

bla*_*gus 16 macos bash terminal iterm

如何在不关闭窗口的情况下重新启动当前的 MacOS 终端会话?

我在 Linux 中使用,exec bash但在此环境中不起作用。我对.bash_profile(提示、别名等)进行了一些更改,我希望在不关闭它并再次打开的情况下看到它。

提前致谢

Mih*_*hir 30

只需输入命令:

exec bash -l
Run Code Online (Sandbox Code Playgroud)

我想应该可以。

对于zsh

exec zsh -l
Run Code Online (Sandbox Code Playgroud)

这是必需的,因为macOS默认情况下每个外壳都是登录外壳。

Justing writingexec bash会用非登录 shell 替换当前 shell,这与关闭和重新打开终端的效果不同。

exec将使新bash -l进程替换当前外壳。如果exec不使用,bash -l将在当前外壳上产生一个新外壳,增加$SHLVL.

  • 我尝试了“exec zsh -l”,它重新启动了 zsh 会话。 (3认同)

Dan*_*aia 14

对我来说,其他解决方案都不适用于 ZSH。

实际上只是简单地source ~/.zshrc完成了工作。

注意:运行exec zsh -l输出/Users/my_username/.zprofile:3: command not found: yarnmy_username我的用户名在哪里)。但仅运行上述命令即可完成这项工作。

  • 我认为这只是意味着当你的“.zprofile”不在路径中或未安装时调用“yarn”(你需要修复)。我有一段时间没有接触过“macOS”,但据我所知,那里的每个 shell 都是一个登录 shell。因此,如果您使用的是“macOS”,则在打开每个新选项卡时应该会收到上述错误。如果您不在“macOS”上,只需执行“exec zsh”即可。 (2认同)