2010-05-29 83 views
2


我试图运行一个jar文件。这个jar文件将以控制台的方式输出多个问题,我想消除控制台,我需要输入一个值才能继续。在perl中运行多个参数的jar文件


例如:
A.选择值1:
[1]视窗
[2]的Unix
输入:2


B.选择值2:
[1]的Oracle
[2] DB2
输入:1


Im trying:
"java -jar program.jar < abc.txt"其中
的abc.txt具有值:

但其不工作其只获得的第一个值。 请帮忙。谢谢。

顺便说一句,香港专业教育学院也试着:


OPEN PIPE, "| java -jar program.jar";
open (FH, /abc.txt)
print PIPE "$res";
close FH;
close PIPE;

问候

回答

3

注知道为什么你目前的做法是行不通的。您可能需要查看CPAN上的Expect模块。

+0

谢谢你们!会尝试。顺便说一句,任何脚本来看看如何使用expect?问候。 – user353660 2010-05-29 18:19:27

+0

我链接到的页面包含模块的文档。最后,有一些代码示例。关于如何自动登录的一个似乎符合法案。 – jackrabbit 2010-06-03 20:31:32

1

我认为该文件被管道一下子就第一个提示的全部内容,因此,文件的剩余部分只是被“吞噬”,失去了

所以+1使用的兔崽子的建议期待模块,而不是

+0

谢谢你们!会尝试。顺便说一句,任何脚本seehow touse期望?问候。 – user353660 2010-05-29 18:18:23