Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 提交中的PBS作业数组id占位符_Arrays_Placeholder_Jobs_Pbs - Fatal编程技术网

Arrays 提交中的PBS作业数组id占位符

Arrays 提交中的PBS作业数组id占位符,arrays,placeholder,jobs,pbs,Arrays,Placeholder,Jobs,Pbs,我在网上搜索这个问题的答案,但是我找不到任何有用的答案,所以我觉得我要找的东西是不可能的,但也许我错过了一些东西。。。所以我想试着问一下: 提交PBS作业数组时,我希望每个作业的工作目录取决于数组ID。下面是一个小示例。对于范围从1到100的作业数组(qsub-t1-100-v$array\u size=100…称为\u script.sh),每个作业都有自己的工作目录bunch\u 1-100、bunch\u 2-100,。。。。。束d 100-100。Atm I只需使用$PBS\u ARRA

我在网上搜索这个问题的答案,但是我找不到任何有用的答案,所以我觉得我要找的东西是不可能的,但也许我错过了一些东西。。。所以我想试着问一下:

提交PBS作业数组时,我希望每个作业的工作目录取决于数组ID。下面是一个小示例。对于范围从1到100的作业数组(
qsub-t1-100-v$array\u size=100…称为\u script.sh
),每个作业都有自己的工作目录bunch\u 1-100、bunch\u 2-100,。。。。。束d 100-100。Atm I只需使用
$PBS\u ARRAY\u ID
变量和包含数组大小的传递变量(
$ARRAY\u size
),即可导航到相应的文件夹

在我看来,这个解决方案并不是最佳的,因为我正在修改
中的命名方案,称为_script.sh
脚本,该脚本由submit脚本调用

因此,如果在提交作业时,作业数组id会有某种占位符,即
qsub-t1-100-v$somevar=/some/directory/path/bunch-#PBS_array_id_占位符-100。。。调用了_script.sh
。因此,每个被调用的_script.sh将自动具有不同的
$somevar
变量

我认为这在理论上是可能的,但我觉得这只是理论:)


提前谢谢你的回答

cd${somevar/\\\PBS\u ARRAY\u ID\u占位符/$PBS\u ARRAY\u ID}在
中调用的\u script.sh
?@DmitriChubarov-Hmm我真的不明白你的意思。如果我正确理解你的评论,你所建议的解决方案就是我正在使用的atm。但正如我提到的,我认为它没有那么灵活。为了澄清问题,我对我的问题做了一些修改。我建议在机制中使用BASH模式替换来替换占位符。要执行此操作,您只需修复占位符名称,即
\PBS\u ARRAY\u ID\u占位符
和模板变量的名称,即
$somevar
,但实际模板可以在
qsub
命令行中提交。我仍然不明白你目前的解决方案和你提出的方案之间的主要区别是什么。啊,好的,我明白了。这确实非常相似。基本上,我是问qsub是否可以自动为占位符插入正确的数组ID,而不是我必须这样做。我在想如果你想把日志文件写到不同的目录,你会遇到麻烦。但我不确定这是否有意义。谢谢你的回复!