如何提交调用我的python脚本的SGE作业

时间:2015-11-24 14:45:30

标签: python linux bash shell job-scheduling

所以,我想在远程机器上运行python脚本。但是,在服务器的手册中,他们这样说:

  

您需要创建此脚本并保存。

#!/bin/bash
#$ -V ## pass all environment variables to the job, VERY IMPORTANT
#$ -N run_something ## job name
#$ -S /bin/bash ## shell where it will run this job
#$ -j y ## join error output to normal output
#$ -cwd ## Execute the job from the current working directory
#$ -q lowmemory.q ## queue name
uptime > myUptime.${JOB_ID}.txt
echo $HOSTNAME >> myUptime.${JOB_ID}.txt
  

因此,如果此脚本名为blast_AE004437.sh,我们可以运行以下命令来完成所有这些步骤。

qsub my_script.sh

所以,我假设我需要创建一个.sh文件来运行它并将所有这些命令添加到我的原始脚本中。是吗?因为我这样做并没有任何反应。在所有这些命令之后,我还添加了" python2.7"加载python。我做错了什么?顺便说一下,输出会出现在同一个文件中,还是需要下载不同的文件?

1 个答案:

答案 0 :(得分:2)

您列出的文件是SGE运行脚本的开头 由作业调度程序调用。 $('.element').each(function(){ myFunction($(this)); }); 将其提交给日程安排 系统。只要群集机器上有一个空闲插槽,就可以了 在那里调用run脚本。

我建议您在此文件中调用自己的脚本。

qsub

通常您还需要手动设置$ PATH变量和$ PYTHONPATH变量 在你可以调用python之前。