我正在使用一个集群。我将使用qsub命令分发我的工作,我想要的是我可以得到作业id,以便我可以监视作业。
基本上,我想要这样的东西:
#!/bin/bash
JOBID=$( qsub job1 )
# Monitoring base on $JOBID我找到了一个页面qsub,它谈到了一个变量PBS_JOBID,但我不知道如何使用它。有人知道怎么做吗?
(我现在的解决方案是jobID='qsub task | cut -d ' ' -f 3')
发布于 2014-04-07 00:36:09
qsub有一个非常可预测的输出。许多自动提交系统(如网格接口)只需解析来自qsub的输出,就可以查找作业as。
解析的一个例子来自BLAHP项目(欧洲网格中间件)。
jobID=`${pbs_binpath}/qsub $bls_tmp_file` # actual submission
...
# The job id is actually the first numbers in the string (slurm support)
jobID=`echo $jobID | awk 'match($0,/[0-9]+/){print substr($0, RSTART, RLENGTH)}'`(来源)
此代码在生产中已经使用了多年,并且在PBS、PBS Pro和SLURM中都为qsub工作过。
发布于 2016-11-30 12:32:21
您可以使用-terse
$ echo sleep 5 | qsub -terse
3543https://stackoverflow.com/questions/22893680
复制相似问题