在qsub下重定向我的java程序的输出



我目前正在使用qsub运行多个Java可执行程序。

我写了两个脚本:1)qsub.sh, 2) run.sh

qsub.sh

#! /bin/bash
echo cd `pwd` ; "$@" | qsub

run.sh

#! /bin/bash
for param in 1 2 3
do
./qsub.sh java -jar myProgram.jar -param ${param}
done
根据上面的两个脚本,我通过 提交作业
sh run.sh

我想重定向由myProgram.jar -param ${param}生成的消息

所以在run.sh中,我用下面的 替换了第4行
./qsub.sh java -jar myProgram.jar -param ${param} > output-${param}.txt

但是output.txt中存储的消息是"Your job 730 ("STDIN")已提交",这不是我想要的。

我知道qsub有一个选项-o用于指定输出的位置,但是我不知道如何在我的情况下使用这个选项。

有人能帮我吗?

问题是qsub不返回作业的输出,它返回qsub命令本身的输出,这只是通知您的资源管理器/调度器您希望运行该作业。

您希望使用qsub -o选项,但是您需要记住,在作业运行完成之前,输出不会出现在那里。对于Torque,您可以使用qstat来检查作业的状态,所有其他资源管理器/调度器都有类似的命令。

相关内容

  • 没有找到相关文章

最新更新