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

Posted

技术标签:

【中文标题】在 qsub 下重定向我的 java 程序的输出【英文标题】:Redirect output of my java program under qsub 【发布时间】:2016-12-13 23:04:51 【问题描述】:

我目前正在使用 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 中存储的消息是 “您的作业 730 (“STDIN”) 已提交”,这不是我想要的。

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

谁能帮帮我?

提前致谢。

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

以上是关于在 qsub 下重定向我的 java 程序的输出的主要内容,如果未能解决你的问题,请参考以下文章

了解服务器/客户端路由:亚马逊(?)如何在没有重定向(或历史条目)的情况下重定向我的 SPA?

如何在不重新加载 HTML 页面的情况下重定向锚标记链接?

在不丢失原始数据的情况下重定向回上一页

提交联系表 7 后如何防止在未输入必填字段的情况下重定向到某个 URL

在不更改 URL 的情况下重定向到另一个网站

我们如何在不丢失数据的情况下重定向到相同的视图