1

Perl 无法打开进出运行的命令管道,这会在通过 qsub 提交到 SGE 时出现问题,因为我丢失了提交的作业 ID。如何将生成的脚本提交给 SGE获取 SGE 分配的作业 ID?

4

1 回答 1

5

这是一个 Perl 常见问题解答:如何在命令之间打开管道?(简答:见IPC::Open2

另一种方法是使用 shell 中的 I/O 重定向工具来捕获外部程序的输出:

open my $qsub_proc, '|-', "qsub $command $args > some/file";
print {$qsub_proc} $the_input_to_the_command;
close $qsub_proc;

open my $qsub_fh, '<', 'some/file';
my @qsub_output = <$qsub_fh>;
... # now parse @qsub_output to get your job id
于 2011-04-26T20:05:50.740 回答