使用while循环在PBS上提交作业,更改输出文件名

时间:2016-10-04 21:22:59

标签: loops pbs qsub

我有一个(让我们称之为原创)脚本逐行解析文件(~1000行),生成执行C ++程序的参数。

    #!/bin/bash
    i = 0
    while IFS='' read -r line || [[ -n "$line" ]]; do
        a="$line" | cut -c1-2
        b="$line" | cut -c3-4
        c="$line" | cut -c5-6
        d="$line" | cut -c7-8
        e="$line" | cut -c9-10
        f="$line" | cut -c11-12
        g="$line" | cut -c13-14
        h="$line" | cut -c15-16
        i="$line" | cut -c17-18
        j="$line" | cut -c19-20
        k="$line" | cut -c21-22
        l="$line" | cut -c23-24
        m="$line" | cut -c25-26
        n="$line" | cut -c27-28
        o="$line" | cut -c29-30
        p="$line" | cut -c31-32
        ./a.out "$a" "$b" "$c" "$d" "$e" "$f" "$g" "$h" "$i" "$j" "$k" "$l" "$m" "$n" "$o" "$p" > $(echo some-folder/output_${i}.txt)
    done < test_10.txt

我想批量安排这项工作,以便每次运行都排队并在不同的核心上运行。

我检查了PBS和qsub的写作风格。我可以写一个PBS文件(简单的,现在没有所有选项。让我们称之为callPBS.PBS):

#!/bin/bash
cd $PBS_O_WORKDIR
qsub ./a.out -F "my arguments"
exit 0

我可以在原始脚本中调用此文件而不是./a.out --------。但我如何通过“我的论点”?问题是它们没有修复。

其次我知道qsub将-o作为输出文件的选项。但是我希望更改输出文件名。我可以再次将其作为一个论点,但是如何?

我可以在原始剧本中执行此操作:

callPBS.pbs > $(echo some-folder/output_${i}.txt)

如果我在这里遗漏了什么,我很抱歉。我正在尝试使用我所知道的一切!

0 个答案:

没有答案