殺死特定 pid 上的每個根進程

殺死特定 pid 上的每個根進程

我想殺死所有屬於 root 的進程,而不是我的進程。現在有:

sudo pkill -u root

但是...嗯,我不知道,這會讓整台電腦崩潰。所以,我需要一種方法來殺死每個 pid 大於 3000 的根進程(並將其與我的進行比較,這樣我就不會最終自殺)。我知道我可能需要使用類似的東西:

sudo pkill -u root $(pgrep ...)

但在與我的比較時,我實際上該如何做到這一點。也許我可以在程式中做到這一點?任何想法?

答案1

這應該要做你想要的事情。前幾天我用過類似的。

for p in `ps -ef | grep ^root | grep -v grep | awk '{ print $2}' | sort -n`; do if ($p -gt 3000); then kill -9 $p;fi; done

相關內容