我正在尝试使用 bash 脚本编写 tmux 脚本。
这是我用来在后台执行另一个脚本的行(引号是该行的一部分):
"$CURRENT_DIR/scripts/continuum_restore.sh" &
Run Code Online (Sandbox Code Playgroud)
这在我的机器上工作得很好。问题是,对于使用该脚本的另一个用户,上面的行似乎*没有背景*。在他的情况下,脚本是同步执行的。有趣的是,我们尝试从登录 shell ( sleep 10 &)后台运行一个随机进程,在这种情况下一切正常。
这是用户打开的github 问题。
以下是我拥有的用户计算机的所有信息,其中后台似乎不起作用:
bash --version 是 GNU bash,版本 3.2.53(1)-release (x86_64-apple-darwin14)1.9a(如果这很重要)这是包含没有背景的行link的整个脚本。有问题的行是 56。
理想情况下,我想首先一致地重现该问题,然后尝试修复它。以下是我试图重现该问题的内容(未成功):
set +m (在带有&符号的行之前设置它)stty susp undef (在带有&符号的行之前设置它)我的具体问题是:可以使用什么选项来禁用 bash/shell 中的后台功能?(所以我可以重现上述问题)
您可以尝试重定向输出。它可能会阻止作业在后台运行。
nohup "$CURRENT_DIR/scripts/continuum_restore.sh" >/tmp/output.log &
Run Code Online (Sandbox Code Playgroud)