Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 每隔x个时间间隔重复一次未终止的命令_Bash - Fatal编程技术网

Bash 每隔x个时间间隔重复一次未终止的命令

Bash 每隔x个时间间隔重复一次未终止的命令,bash,Bash,我正在尝试在一段时间后运行命令。我找到了以下解决方案: watch -n60 command while true; do command; sleep 60; done 如果命令终止,它们工作正常(例如:echo“message”) 我正在运行的代码没有终止。这就是为什么这些解决方案对我不起作用。但我想运行它,在60秒后终止它,然后再次运行它。如何执行此操作?此操作每60秒启动一次命令,如果进程未终止,则终止进程: while true; do command &; LAST_PI

我正在尝试在一段时间后运行命令。我找到了以下解决方案:

watch -n60 command

while true; do command; sleep 60; done
如果命令终止,它们工作正常(例如:
echo“message”


我正在运行的代码没有终止。这就是为什么这些解决方案对我不起作用。但我想运行它,在60秒后终止它,然后再次运行它。如何执行此操作?

此操作每60秒启动一次
命令,如果进程未终止,则终止进程:

while true; do command &; LAST_PID=$!; sleep 60; kill -9 $LAST_PID; done
使用


请注意,如果该命令在60秒结束前退出,它将立即重新执行,而不是等待一分钟结束。

那么在运行1000次后会发生什么情况?没有一次终止?您有1000个进程仍在运行?你一定会杀死你的服务器/系统/任何东西。你真的应该重新考虑你想要/需要什么。@AleksG我想在经过一段时间后终止并重新启动它,commad:
,而true;做命令&;睡眠60;完成
while true; do timeout 60 command; done