使用qsub提交后可以删除shell脚本而不影响作业吗?

时间:2012-02-06 22:00:37

标签: linux shell cluster-computing qsub

我想使用qsub提交一堆作业 - 这些工作都非常相似。我有一个循环的脚本,并在每个实例中重写文件tmpjob.sh然后执行qsub tmpjob.sh。在作业有机会运行之前,tmpjob.sh可能已被下一个循环实例覆盖。在作业等待运行时是否存储了另一个tmpjob.sh副本?或者在工作开始之前我是否需要注意不要更改tmpjob.sh?

2 个答案:

答案 0 :(得分:4)

假设你在谈论扭矩,那么是;扭矩在提交时读取脚本。事实上,提交脚本根本不需要作为文件存在;如documentation for torque中的示例所示,您可以将命令传递给qsub(来自文档:cat pbs.cmd | qsub。)

但其他几个批处理系统(SGE / OGE,PBS PRO)使用qsub作为队列提交命令,因此您必须告诉我们您正在使用的排队系统。

答案 1 :(得分:0)

是。您甚至可以使用HERE Documents创建作业和子作业。下面是我使用cron作业启动的脚本进行测试的示例:

#!/bin/env bash
printenv
qsub  -N testCron  -l nodes=1:vortex:compute -l walltime=1:00:00 <<QSUB
cd \$PBS_O_WORKDIR

printenv

qsub  -N testsubCron  -l nodes=1:vortex:compute -l walltime=1:00:00 <<QSUBNEST
cd \$PBS_O_WORKDIR
pwd
date -Isec

QSUBNEST


QSUB