将qsub变量传递给调用python的.pbs脚本

1 投票
1 回答
988 浏览
提问于 2025-04-18 17:15

我在使用qsub命令时,加了-v这个选项,像这样:

qsub -v START=0,COUNT=30000 foobar.pbs

这样可以把START和COUNT这两个变量传递给foobar.pbs文件,但是foobar.pbs最后需要调用一个命令,像这样:

python /home/CS4/bin/myrun.py foo_bar.ini

问题是,bash似乎没有正确处理这个python的调用,导致python程序没有被启动。这个问题应该很简单吧?希望能得到一些帮助。

pbs脚本大致是这样的:

#!/bin/bash

#PBS -N test
#PBS -l select=1:ncpus=1:mem=4gb
#PBS -l walltime=2:00:00
#PBS -j oe

set -x 
cd ${PBS_O_WORKDIR}
export PYTHONPATH=/home/CS4:${PYTHONPATH}

TEMPL=/home/CS4/in/tr/1km/foo_bar.ini.m4
DIR=$(dirname ${TEMPL})
BASE=$(basename ${TEMPL} .m4)
INI=$(basename ${BASE} .ini).${START}.ini
m4 -D START=${START} -D COUNT=${COUNT} ${TEMPL} > ${DIR}/${INI}

time python /home/CS4/bin/myrun.py ${DIR}/${INI}

1 个回答

1

你有没有试过给Python提供完整的路径呢?

撰写回答