2012-08-03 93 views
2

我從一個shell腳本「TC Shell腳本」調用Java程序和Java程序返回代表特定條件下的狀態代碼。捕獲從Java返回代碼在shell腳本

java的prgram的返回代碼在TC殼牌的預先定義的狀態變量被捕獲。

返回代碼被捕獲正常。

我現在面臨的問題是當Java程序返回或-1與shell腳本越來越255返回碼System.exit(-1)結束。

所有正數被捕獲僅在shell腳本細-1被解讀爲255

我怎樣才能解決這個問題。

+1

像一個字節值的聲音已經包裝。 – Bohemian 2012-08-03 03:26:45

+0

http://stackoverflow.com/questions/2726447/why-is-the-exit-code-255-instead-of-1-in-perl – Jayan 2012-08-03 05:02:20

+0

我想你的意思是'tcsh'?這通常被稱爲Tenex C shell或簡稱爲'tcsh'。從C shell家族有一個廣泛的運動;也許你應該切換到Bash或Zsh(儘管對於這個問題,它確實沒關係)。 – tripleee 2015-08-20 07:29:00

回答

3

可執行文件的返回碼是一個很小的正數。負數轉換爲無符號。沒有辦法在退出代碼中獲得負數。