我有一个bash
通过 运行的脚本at
,我运行它是
echo "bash /path/to/my/script.sh" | at -M now
因为我希望它独立运行。
生成脚本后,我立即看到 2 个实例 ( ps
),即使在我的脚本成功完成后,另一个实例也不会终止。它将被重新设置为 pid1
并继续等待(strace
显示wait4(-1...
)。
我无法弄清楚为什么或如何分叉第二个实例!当我在没有 的情况下运行脚本时at
,我看不到第二个进程。调试这个的任何提示/提示?
谢谢。
签出这个简单的脚本:
这会将脚本 stdout 和 stderr 的整个输出重定向到指定的日志文件(在本例中为
/tmp/<pid>.log
and/tmp/<pid>-2.log
),并且日志文件的 stderr 部分将包含它执行的每个命令。您可以使用此输出来跟踪脚本的执行,并查看它挂在哪里...17958-2.log 的内容: