我可以tmux
在启动时轻松地在我的 shell 上启动,但让我们假设:
- 进程 A => 使用命令启动新终端(进程 B)
- 进程 B => 直接启动
tmux
,不启动传递的命令。
有什么办法可以解决这个问题(使用 tmux 和上一个命令启动新终端)?
我使用的是默认的 macOS 终端,所以是 zsh shell。具体来说,我在启动构建时遇到了这个错误,react-native
它会在新的终端中启动打包程序。
如果我启动osascript -e 'tell app "Terminal" to do script "pwd"'
. 我希望在启动一个新的终端窗口后获取当前目录,但我什么也没得到,我只看到 shell 使用tmux
.
Tmux
总是自动启动 来刷新(我正在使用一个简单的脚本),事实上,如果我对这个脚本进行注释,前面的命令就会正确打印目录。
我用来启动它的脚本(位于里面zshrc
)是:
if command -v tmux &> /dev/null && [ -n "$PS1" ] && [[ ! "$TERM" =~ screen ]] && [[ ! "$TERM" =~ tmux ]] && [ -z "$TMUX" ]; then
exec tmux
fi