我有一个程序,在 Xorg 启动后应该一直运行(它会收集一些统计数据)。但是,这个程序可能会发生一些异常,或者它可能会无意中关闭,而我想要的是自动重新启动它。第一个想法是每分钟用 cron 运行另一个脚本,它会重新启动它,但这似乎不是最佳选择,那么执行此操作的首选方法是什么?
答案1
有很多方法可以做到这一点,选择哪种方法取决于脚本的运行方式。一种适用于任何命令且不需要 root 访问权限的简单方法是运行如下命令:
while true; do pgrep -f myscript.sh >/dev/null || myscript.sh; sleep 1; done
这将永远运行(while true
)并且如果 myscript.sh 尚未运行则启动它。