2012-10-21 37 views
2

本質上我正在尋找編寫一個shell腳本,可能使用for循環,這將允許我多次重複程序調用而不必手動執行(我不知道如何解釋這一點,但我想要在cmd窗口中多次執行java TestFile.java命令而不用手動執行)。如何編寫一個重複java程序特定次數的shell腳本?

我想寫在bash中的UNIX shell,如果有幫助的話。

我的程序輸出一組數字,我想看看分析結束行爲,所以我需要爲許多不同的輸入執行很多測試,我想簡化這個過程。我對shell腳本有一個非常基本的理解 - 我今天嘗試自學自我,但我無法真正理解for循環的語法或如何編寫.java文件調用的語法,但是我可以編寫它們在shell腳本中有一點幫助。

+0

總是一個好主意來測試代碼,並在運行自動化和簡化,使測試容易測試的過程。 bash腳本的答案將會流入,但在發生這種情況時,我建議您考慮使用jUnit進行測試。有關更多信息,請參見http://www.junit.org/。編寫junit測試將是您的Java應用程序的自動測試的終極目標,您可以在這裏撰寫這些測試獲得大量幫助。 –

回答

1

這樣做:

#!/bin/bash 

javac Testfile.java # compile the program 

for((i=1;i<=50;i++)) 
do 
echo "Output of Iteration $i" >> outfile 
java Testfile >> outfile 
done 

這將編譯你的java程序並運行它的50倍,並存儲在名爲outfile文件的輸出。同樣,你可以改變你想要的迭代次數。

2
#!/bin/bash 

for i in {1..10} 
do 

#insert file run command here 

done 
1
#!/bin/bash 

LOOPS=50 
for i IN {1 .. LOOPS} 
do 
    java TestFile >> out.log 
done 
相關問題