Shell

我可以用 kill 連結 pgrep 嗎?

  • June 21, 2014

我注意到它|用於將第一個命令的結果發送給另一個。我想殺死所有匹配名稱的程序。

這是 pgrep 通常做的事情:

$ pgrep name
5089
5105

並且多個參數似乎適用於kill

sudo kill 5089 5105

但這是錯誤的:

pgrep name | kill

那麼如何正確地做呢?

試試這個:

pgrep name | xargs kill

如果您使用pgrep name | kill, 的輸出將pgrep name饋送到 的標準輸入kill。因為kill不從標準輸入讀取參數,所以這不起作用。

使用xargs,它將為kill來自標準輸入的參數建構參數。例子:

$ pgrep bash | xargs echo
5514 22298 23079

這應該有效:

pkill name

我還建議閱讀手冊頁。

引用自:https://unix.stackexchange.com/questions/138202