在Bash中每6分钟运行一次命令

Day*_*nes 3 bash centos

我希望./example每隔6分钟安排一个命令,当完成6分钟后,它会退出进程并再次运行.我怎么会在Bash中这样做?我运行CentOS.

Emi*_*röm 6

我会每六分钟运行一次cronjob并使用timeout命令杀死它,比如5分50秒.

这是一个示例crontab规则:

*/6 * * * * cd /path/to/your/file && timeout -s9 290s ./example
Run Code Online (Sandbox Code Playgroud)

它将工作目录更改为您拥有脚本的位置,然后执行脚本.请注意,我使用-s9标志发送信号9(SIGKILL),这意味着"立即终止".在大多数情况下,您可能需要考虑发送SIGTERM,这会告诉脚本"正常退出".如果是这种情况,您可以考虑通过减少超时值来为脚本提供更多的时间来退出.要发送SIGTERM而不是SIGKILL,只需删除该-s9标志即可.

您可以通过运行来编辑crontab crontab -e