我在Linux上工作,我在Linux终端上执行了for循环,如下所示:
for i in `cat fileName.txt`
do
echo $i
vim $i
done
fileName.txt是一个包含我在vim编辑器中一个接一个打开的大量文件条目的文件。现在,我必须跳过打开中间的其他文件。(即,我必须中断for循环)。有什么建议如何获得运行for循环的PID吗?然后杀掉同样的人。提前谢谢。
我想知道UNIX信号的安全性。
SIGKILL会扼杀这个过程。那么,当非根用户的进程向根用户的进程发送信号时会发生什么呢?这个过程还在执行信号处理程序吗?
我遵循公认的答案(gollum's),输入man capabilites,我发现了许多关于Linux内核的内容。来自man capabilities:
NAME
capabilities - overview of Linux capabilities
DESCRIPTION
For the purpose of performing permission checks, traditional UNIX
im
因此,可以使用timeout来设置进程/命令的最终时限,就像提到的和一样。例如,timeout 300 sleep 1000将在300秒后返回提示,而不是1000秒。
但是,在进程仍在运行时,是否有任何方法可以动态地修改此限制?所以这就是我要找的。
at time 0 : timeout 300 python long_run.py
at time 250 : <some way to extend the timeout limit by another 300 minutes or so>
我试过两种方法,但没能成功。
通过GDB
我试图使用gdb附加到timeout进程。它