【发布时间】:2018-05-22 19:49:13
【问题描述】:
在此之前,对于这样一个可能已经回答的基本问题,我深表歉意。感谢您的帮助或为我指明现有答案的方向。
我正在尝试通过在 PSB 脚本中设置数组作业来运行 1000 个 Python 脚本超过 1000 个数据文件。每个脚本显式调用一个特定的数据文件;它是硬连线的。这将是具有挑战性的,并且没有必要解释为什么需要单独维护 python 脚本和数据文件。
我有 python 文件名 1.py、2.py、... 1000.py。这些没有存储在我的主目录中,我认为这就是现在的问题。
我在 PBS 脚本上尝试了许多变体,但都无济于事,但我想我比今天早上更接近了。
无论如何,这就是我现在所拥有的:
#! /bin/bash
#PBS -j oe
#PBS -o TEST-ARRAY.txt
#PBS -N TEST-ARRAY
#PBS -l nodes=1:ppn=1
#PSB -t 1-1000%100
#PBS -q long
file='SOME/DIRECTORY/'${PBS_ARRAYID}'.py'
python $file
不幸的是,我得到了错误
python: can't open file 'SOME/DIRECTORY/.py': [Errno 2] No such file or directory
所以,看来我的文件变量设置有缺陷,无法为文件名字符串插入作业数组号。但是,我尝试过使用和不使用单引号,以及其他一些没有运气的逻辑事情。
提前感谢您的帮助。
【问题讨论】:
-
您是否尝试将“SOME/DIRECTORY/”更改为文件所在的实际目录? “SOME/DIRECTORY”只是一个占位符,需要改成真实路径。
-
是的,当然。我在这里只使用了“SOME/DIRECTORY/”,因为实际名称很长而且视觉上很可怕。