simread31 file.sim
程序会问我9个输入。
现在,我想在perl中这样做。我知道我可以将echo
与system
结合使用以获得一个输入,但是如何针对多个输入进行组合?
答案 0 :(得分:3)
使用system()
执行此操作时遇到问题的原因是,这是该作业的错误工具。如果您open(my $fh, '|-', 'simread31', 'file.sim')
,您将能够print
或say
您对儿童计划的STDIN的输入。
我现在不在我的机器上,因此语法来自内存。 perldoc perlopen
应提供更多详细信息。
<强>窗强>
由于Windows没有实现管道打开的列表形式,您应该使用以下内容:
open(my $fh, '|-', "simread3.exe $sim_file")
直接从Perl输入管道输入通常比通过system()
打开,写入,关闭,管道,然后清理外部文件更有效。