
我試圖終止的特定 find 命令正在用戶創建的腳本內運行?
我創建了一個腳本,其中包含一個運行長達 10 分鐘的 find 命令,在我再次運行相同的腳本之前,它需要終止該 find 命令。
答案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