我尝试终止的特定查找命令是否在用户创建的脚本中运行?
我创建了一个脚本,其中包含一个运行长达 10 分钟的查找命令,在我再次运行同一个脚本之前,它需要终止该查找命令。
答案1
程序包
您可以使用pgrep
开关-a
:
pgrep -a find
它将为您提供完整的命令行以及进程 ID:
10838 find / -iname png
10839 find / -iname jpg
然后你就可以决定是否要杀死它:
kill 10838
将杀死png。
杀伤力
你也可以pkill
这样使用:
pkill -x "find / -iname png"
-x
意思是:只匹配名称为的进程。
查找子进程:
使用树来查找您想要的进程,假设您的脚本名称是“script.sh”,您可以使用pgrep -f script
它来找到它,然后将输出传递给以pstree
获取其子进程的列表并终止作为您的脚本的子进程的查找进程。
$ pstree -p $(pgrep -f script)
bash(10915)───find(10916)
$ kill 10916