2

我正在从 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 会产生错误。

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

非常感谢。

4

2 回答 2

0

这些错误是不言自明的。确保/valid/dir/name实际上是一个目录。如果找不到,您可以将其放入您的 shell 脚本中以创建此目录。

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

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

于 2010-03-08T00:42:51.143 回答
0

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

于 2012-03-13T22:39:27.410 回答