2017-03-05 60 views
0

我想編寫一個Bash腳本,它在javac之後執行某些操作,具體取決於是否存在編譯錯誤。是否有可能獲得javac的錯誤數量?

實際上,如果至少有一個錯誤,這些操作將不會被執行。否則,他們會。

我試圖做這樣的事情,但它沒有工作:

javac_return=`javac [...] -d ../class` 
if [ javac_return -eq 0 ] 
then 
# operations 
fi 
+0

'的javac ... || {回聲「未能編譯」>&2;出口;如果'javac'失敗,''會退出腳本並顯示錯誤。那是你要的嗎? –

回答

2

你必須使用$一個bash變量的值。但是,狀態碼不作爲輸出返回。

你可以做,但是

if javac [...] -d ../class; 
then 
# next command 
else 
# error handling 
fi 

,或者用命令鏈成語

command && next_command_if_succeeded || or_if_failed 
+0

你在'status'之前忘了'$'(即:'if [$ status]')? –

+1

好笑,那正是我的評論! – karakfa

相關問題