后小心审查一般“cron”答案,我仍然卡住了。
我的 crontab 内容如下:
# m h dom mon dow command */5 * * * * /usr/bin/pkill -f process.py && /usr/bin/python /path/to/process.py > /path/to/process.log 2>&1
我希望process.py
每 5 分钟重启一次。
各pkill
部件按预期工作,process.py
每 5 分钟关闭一次。
然而,我的 cron 任务的第二部分(重新启动process.py
)没有发生!
- 日志文件/path/to/process.log
不包含任何错误,实际上它没有改变。
- 在 cron 之外运行命令有效。
- 查看/var/log/syslog
仅显示 cron 执行命令,但似乎没有任何地方记录输出/错误
- 我尝试了这两个命令之间的两个;
命令&&
。 不好。
欢迎任何建议!
答案1
是否有可能pkill
终止 cron 进程以触发新的实例,process.py
因为正则表达式发现正在运行的进程process.py
和即将启动它的 cron 进程?