Linux bash:运行一个命令n分钟,然后将其激活

Linux bash:运行一个命令n分钟,然后将其激活,linux,bash,shell,timeout,Linux,Bash,Shell,Timeout,是否有任何bash/linux命令可以启动长时间运行的命令,然后在n分钟后将其杀死?我想我可以使用fork和kill来用perl破解一些东西,但是有人知道已经有了吗?试试这个,它在后台启动您的命令,将它的PID存储在$p中,等待一段时间,然后用SIGHUP来杀死它 yourCommand & PID=$! sleep ${someMinutes}m kill -HUP $PID 干杯 PS:这假设睡眠知道Nm(分钟),否则,您可能需要做一些数学计算:)n=5 一些命令& pid=$!

是否有任何bash/linux命令可以启动长时间运行的命令,然后在n分钟后将其杀死?我想我可以使用fork和kill来用perl破解一些东西,但是有人知道已经有了吗?

试试这个,它在后台启动您的命令,将它的PID存储在$p中,等待一段时间,然后用
SIGHUP
来杀死它

yourCommand & PID=$!
sleep ${someMinutes}m
kill -HUP $PID
干杯

PS:这假设睡眠知道Nm(分钟),否则,您可能需要做一些数学计算:)

n=5
一些命令&
pid=$!
在now+$n分钟时,请查看大多数GNU/Linux发行版中的now命令

timeout -sHUP 10m command

同样的功能也可以通过

实现,谢谢!这基本上就是我刚刚编写的perl,但很高兴看到它只是一个shell习惯用法。如果有人知道的话,我仍然想要一个预构建的脚本,但我会接受这一点作为答案。我为异步功能给出了+1,尽管我的想法是阻塞。这正是我想要的!
timeout -sHUP 10m command