Bash 等待qsub作业集完成,然后执行下一个命令
由于我使用的集群资源有限,我在bash中使用for循环提交了一系列作业。我想等待pbs中的所有作业在下一个命令之前完成。这里的链接似乎解决了我的问题 但如果我没有下一个要运行的作业脚本,只有一些简单的bash命令,那么我仍然不知道在-cwd之后应该放什么 下面是用于提交pbs任务的循环Bash 等待qsub作业集完成,然后执行下一个命令,bash,pbs,Bash,Pbs,由于我使用的集群资源有限,我在bash中使用for循环提交了一系列作业。我想等待pbs中的所有作业在下一个命令之前完成。这里的链接似乎解决了我的问题 但如果我没有下一个要运行的作业脚本,只有一些简单的bash命令,那么我仍然不知道在-cwd之后应该放什么 下面是用于提交pbs任务的循环 for i in `seq 1 10`; do if [ "$i"==10 ]; then EndLine=$((SeqNum*2)) fi EndLine=$((StartLine-1+(EachFil
for i in `seq 1 10`; do
if [ "$i"==10 ]; then
EndLine=$((SeqNum*2))
fi
EndLine=$((StartLine-1+(EachFile+1)*2));
NewFile='StHeBC2-'$i'.fasta'
sed -n "$StartLine,$EndLine p" StHeBC2.fasta > $NewFile
StartLine=$((EndLine+1))
JobFile='StHeBC2-'$i'.sh'
echo "
#!/bin/bash
#PBS -l ncpus=8
#PBS -l mem=8GB
#PBS -l nodes=4
#PBS -l walltime=120:00:00
#PBS -m bea
#PBS -W umask=33
cd $PBS_O_WORKDIR
TransDecoder -t $NewFile -m 15 --search_pfam Pfam-A.hmm --API --CPU 8
" > $JobFile
qsub $JobFile
done
在pbs中完成所有作业文件后,我想使用一些基本命令cat/cut等总结TransDecoder的输出,如
cat test-*.fasta.transdecoder.pep > test.fasta.transdecoder.pep
有人能帮忙吗?谢谢您使用的是哪个版本的pbs?qsub版本返回什么?在TORQUE中,您可以使用作业依赖项来完成此任务。我假设PBSPro提供了类似的特性。