解释起来很难,但这是我观察到的行为:
# ~/.bashrc
if [ -n "$TMUX" ]; then
sleep 100 &
fi
有了它.bashrc
,我可以启动 tmux 会话,pgrep sleep
并看到一个 PID 出现。我可以从 tmux 和 分离pgrep sleep
,它仍然在那里。
但是如果我完全退出 tmux,那么当我 时pgrep sleep
,它就消失了。
如果我手动打开新的 tmux 会话,则不会出现这种情况。在裸终端中使用调用sleep 100 &
时也不会出现这种情况(.bashrc
sleep 100 &
IE,没有 tmux)。
发生了什么?这是 tmux 中的预期行为吗?
编辑:这也适用于其他启动脚本,例如.bash_profile
。或者可能仅适用于.bash_profile
— 我在 Mac 上,因此无论如何我都会调用.bashrc
它.bash_profile
。