从qsub集群脚本运行时脚本无法找到目录/文件

时间:2010-03-07 17:09:48

标签: shell unix cluster-computing qsub

我在qsub shell脚本的python脚本上调用几个unix命令和python,意味着在集群上运行。麻烦的是,当脚本执行时,shell中似乎出现了错误,因此找不到存在的目录和文件。例如,在qsub的.out输出文件中,我看到以下错误:

cd: /valid/dir/name: No such file or directory
python valid/script/name.py 
python: can't open file 'valid/script/name.py': [Errno 2] No such file or directory

所以脚本无法cd成一个肯定存在的目录。类似地,在一个肯定存在的python脚本上调用python会产生错误。

知道这里可能出现什么问题,或者我如何尝试调试它?

非常感谢。

2 个答案:

答案 0 :(得分:0)

错误非常自我解释。确保/valid/dir/name实际上是一个目录。如果找不到,可以将它放在shell脚本中以创建此目录。

if [ ! -d "/valid/dir/name" ];then
   mkdir -p /valid/dir/name
fi

至于Python错误,因为没有“有效”目录,它会给你错误。

答案 1 :(得分:0)

此目录是否存在于每个可能的计算节点上?请记住,脚本不一定在您提交的主机上执行。尝试将python等效的echo hostname添加到您的脚本中,然后验证该主机上是否存在该目录。