我想在不创建离散作业文件的情况下即时提交 qsub 作业。所以,假设我有一个名为“get_time.py”的 python 脚本,它只是报告时间。而不是像这样制作提交脚本:
cat>job.sub<<eof
#PBS -l walltime=1:00:00
cd $PBS_O_WORKDIR
get_time.py
eof
...然后提交作业:
qsub job.sub
我希望能够绕过文件创建步骤,并且我认为构造将是这样的:
qsub -d . -e get_time.py
其中
-e
是我的假想参数,它告诉 qsub 以下是要发送到调度程序的代码,而不是使用离散提交文件。我疯了吗?似乎应该已经有一个简单的解决方案,但我在任何地方都找不到。感谢您的任何建议!
最佳答案
在提供所有选项( qsub
等)后,您可以将任何可执行脚本/文件的名称传递给 -d .
。脚本名称之后的任何参数都被视为该脚本的参数。例如,如果我有脚本 test.py:
#!/usr/bin/python
from sys import argv
script, param = argv
print param
然后我可以跑
qsub test.py 2
我的日志的输出将是
2
。需要注意的两个重要事项:
chmod +x test.py
)。 #!/usr/bin/python
)。 关于python - 在没有实际作业文件的情况下提交 qsub 作业的语法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20127722/