我试图运行一个jar文件。这个jar文件将以控制台方式输出多个问题,我想消除控制台,我需要输入一个值才能继续。
例如:
A.选择值1:
[1] Windows
[2] Unix
输入:2
B.选择值2:
[1]甲骨文
[2] DB2
输入:1
我试着:
"java -jar program.jar < abc.txt"
其中
abc.txt的值为:
2
1
3
等。
但它没有工作,只能获得第一个价值。
请帮忙。感谢。
OPEN PIPE, "| java -jar program.jar";
open (FH, /abc.txt)
print PIPE "$res";
close FH;
close PIPE;
此致
答案 0 :(得分:3)
请注意您当前的方法无效的原因。您可能需要查看CPAN上的Expect模块。
答案 1 :(得分:1)
我认为该文件的所有内容都被一次性地传输到第一个提示符,因此该文件的其余部分被“吞噬”并丢失
所以,对于jackrabbit建议使用Expect模块而不是