[linux] 大批量刪除任務


一不小心投了巨多任務,或者投遞的資源不合理時,想批量殺掉這些任務。
image.png

kill的方法就不說了,我這里用qdel的方法。
用了這么一條命令:

 qstat |sed '1,2d' |awk -F' ' '{print $1}' |sed ':x;N;s/\n/ /;b x'|cat

image.png

再用qdel刪除即可。這里還是用了兩步,而且用sed將換行符替換為空格很復雜的樣子,不友好。
image.png

其實可以直接用xargs簡化:

qstat |sed '1,2d' |awk -F' ' '{print $1}' | xargs qdel

image.png

也可根據用戶或者運行狀態有選擇性地刪除,如只刪等待狀態的任務而不刪除運行中的任務。

qstat -u USERNAME | grep "qw" | cut -d" " -f1 | xargs qdel

image.png
同樣,刪除運行中的任務:

qstat -u USERNAME | grep "r" | cut -d" " -f1 | xargs qdel

cutawk均可


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM