Bash
將標誌傳遞給 xargs
我想用這個命令殺死一堆程序:
sudo ps ax | grep node | awk '{print $1}' | xargs kill
但它給了我即使使用 sudo 也不允許的操作。
kill -9
然後我為每個過程單獨嘗試並且它有效。現在我的問題是如何
-9
通過 xargs 傳遞標誌來殺死?下界
xargs kill -9
或xargs -9 kill
為我工作。
只有該管道 (
ps ax
) 中的第一個命令以 root 身份執行。該行的其餘部分(包括kill
命令)正在以您的普通非 root 使用者身份執行。要
kill
以 root 身份執行,您需要像這樣執行它:ps ax | grep node | awk '{print $1}' | sudo xargs kill -9
或者
ps ax | grep node | awk '{print $1}' | xargs sudo kill -9
或者,如果您已經
pkill
安裝,您可以執行:sudo pkill -9 node
你需要殺戮的sudo。
ps ax | grep node | awk '{print $1}' | xargs sudo kill -9