Shell

殺死所有排隊的作業

  • November 20, 2018

我需要殺死我 ID 上所有排隊和正在執行的作業。我試過了

  at -l | awk '{print $1}'| at -r {}

但我不斷得到

  {} does not exist

這讓我相信我在解析這個陳述是錯誤的。

|管道輸出到下一個命令的標準輸入,而不是它的命令行參數。

要刪除所有排隊的作業,請執行

at -l | awk '{print $1}'| xargs at -r

或者,您可以使用

at -r  $( at -l | awk '{print $1}' )

$( ... )被它包含的命令的輸出替換。

另請參閱此相關問題

請注意,這只是從 atq 中刪除作業,但不會終止正在執行的作業。

如果程序命令行與 PATTERN 匹配,並且您的使用者名上沒有其他類似程序正在執行,則可以使用以下命令將其殺死

pgrep -u $USER PATTERN

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