我提交了很多带有调试时间限制的 SLURM 作业脚本(我忘了更改实际运行的时间)。现在它们都是同时提交的,所以它们都以作业 ID 197xxxx 开头。现在,我可以做到
squeue -u $USER | grep 197 | awk '{print $1}'
打印我要删除的作业 ID。但是如何在所有这些 ID 上使用 scancel 命令。上述 shell 命令的输出如下所示
19726664
19726663
19726662
19726661
19726660
19726659
19726658
19726657
19726656
19726655
19726654
19726653
19726652
19726651
19726650
有关详细信息,请查看文档
xargs
。如果scancel
接受多个作业 ID(它应该),您可以省略该-n 1
部分。为了取消我所有的 slurm 工作(省略 OP's
grep 197
),我发现我必须修剪包含列标题的 squeue 输出的第一行:一个短一点的版本,只有由以下人员打印的作业编号
squeue
:由于这是一个简化的解决方案,您也可以这样做:
这省略了格式化选项,而是删除了带有
-h
标志的标题。这是我通常使用的:
取消我所有的工作:
通过过滤取消:即取消所有 jobId 以 26699 开头的作业):