我有两个工作,jobA.sh和jobB.sh. jobA.sh成功完成后,我想让jobB.sh启动。为此,我必须获得jobA.sh的jobid编号。但是我的代码的以下部分是有问题的。我的代码给出了以下错误。该错误意味着jobB.sh无法启动。该代码无法获得jobA.sh的jobid号码。我如何获得jobA.sh的工作号码?如何使用perl脚本获取在slurm上提交的作业的jobid编号?
错误:
Submitted batch job 298784 sbatch: error: Batch job submission failed: Job dependency problem
代码正确提交jobA.sh但它提供了上述错误的jobB.sh.
my $jobidA=0;
my $jobs = "sbatch jobA.sh";
system $jobs || die "Error:\n$jobs\nerror";
# I think the following line captures jobid?
($jobs =~ /^Submitted batch job (\d+)/);
# And the following line stores jobid?
my $jobidA = $1;
my $jobs2 = "$path/jobB.sh";
my $jobs2 = "sbatch --dependency=afterok:$jobidA $jobB.sh";
system $jobs2 || die "Error:\n$jobs2\nerror";