2010-05-29 16 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