我需要在终端中每隔 x 个时间间隔停止执行命令并启动相同的逗号?

我需要在终端中每隔 x 个时间间隔停止执行命令并启动相同的逗号?

我需要停止终端中正在运行的 Java 脚本的执行,并在终端中每隔 x 个时间间隔启动相同的执行。这可能吗?

答案1

是的,/usr/bin/timeout是可以使用的工具。请参阅man timeout。下面是一个例子,来自我的一项夜间cron作业,您可以将您的作业包装在while true ; do循环中:

TO_KILL="45m"           # timeout (kill -KILL) for hpodder
TO_HUP="42m"            # timeout (kill -HUP) for hpodder. Makes sense only if it is less than $TO_KILL
# ...
timeout -k $TO_KILL -s HUP $TO_HUP hpodder  update

这将运行hpodder update直到它完成,或者 42 分钟过去,此时将发送信号(参见man 7 signalHUP。如果hpodder update45 分钟后(发送 3 分钟后)仍在运行HUP,它将被发送不可捕获KILL信号,并将被终止。

相关内容