2
我使用Ant,它基本上是一個Java程序,用於在Solaris上啓動ksh(test.ksh)腳本。在這個ksh中,調用另一個啓動程序的ksh(test1.ksh)腳本,我希望這個程序可以繼續運行。爲什麼我的子任務在ant任務中被殺死?
Ant目標看起來就像這樣:
<target name="start.loading.data.Global">
<shellscript shell="ksh">./test.ksh</shellscript>
<sleep seconds="300"/>
</target>
的問題是,我發現當螞蟻的目標完成,該計劃已被殺害。 我已通過添加
<sleep seconds="300"/>
確認,因爲從我的應用程序的日誌,它可以運行約3分鐘後,我補充睡眠,它可以運行約8分鐘。
我在Ant腳本中使用
<parallel>
嘗試,但沒有奏效。 我也嘗試使用nohup啓動ksh,但沒有奏效。
有什麼建議嗎? 如果可能的話,請解釋一下shell的工作原理。
雖然你的問題在技術上是關於[unix.se]的話題,但它似乎主要是關於Ant,它是一個構建工具,因此它擁有更多的專業知識。所以你的問題已經轉移到[so]。 – Gilles 2012-03-09 21:24:47
這聽起來像你的shell腳本test1.ksh正在完成,而不是像你期待的那樣無限期運行。也許你應該在shell腳本中發佈代碼,或者解釋一些你正在嘗試做的事情。從目前的描述來看,似乎是一個殼問題。 – 2012-03-09 22:26:44
您是否嘗試在ksh文件名末尾添加'&':' ./ test.ksh& shellscript>',這是一個很長的過程,但它可能會起作用。 –
Michael
2012-03-26 15:43:48