Slurm:如何通过脚本使用JobName仅获取jobID

时间:2018-09-10 19:01:08

标签: slurm sacct

如果我知道我已运行的作业的名称,那么如何通过脚本仅返回其作业ID。

例如,运行sacct --name run.sh返回以下输出,而我只想返回50jobID)。

$ sacct --name run.sh
       JobID    JobName  Partition    Account  AllocCPUS      State ExitCode
------------ ---------- ---------- ---------- ---------- ---------- --------
50               run.sh      debug      alper          1  COMPLETED      0:0
50.batch          batch                 alper          1  COMPLETED      0:0

作为一种解决方案,我可以运行:sacct --name run.sh | head -n3 | tail -n1 | awk '{print $1}'返回50,但是有时其他作业的5050.batch的顺序也会改变。

1 个答案:

答案 0 :(得分:1)

使用以下选项组合:

sacct -n -X --format jobid --name run.sh 

其中

  • -n将取消显示标题
  • -X将取消显示.batch部分
  • --format jobid仅显示Jobid列

这将仅输出jobid,但是如果有多个作业与给定的作业名称相对应,您将获得多个结果。