0
我想写一个bash脚本来运行一个进程接连不同的命令行选项大约1024次。然而,其中一个进程包含一个无限循环,我试图在循环的另一个迭代开始之前终止该进程。Bash脚本:当其他完成时杀死一个进程
所以这里是我试过到目前为止(PROG1包括无限循环,我想,当PAPI完成运行后杀吧):
#!/bin/bash
for ((i=0; i<32780; i+=32))
do
./prog1 $i &
pid=$!;
sleep 5s
./papi
kill -s 2 $pid
done
但是它不会杀死任何prog1
情况下,当然它在每次迭代开始时继续创建它们。我究竟做错了什么?
确实PROG1忽略信号2?如果您使用KILL,它会起作用吗? –
你的脚本以外的杀人行为是否可行?你尝试过“杀死-9”吗? –
你为什么使用SIGINT? kill的默认值是SIGTERM,如果使用它,会发生什么情况? – Graeme