2012-07-11 57 views
0

我有這一塊的代碼:殼牌編程 - 獲得while循環值完成後

var1=0 

while loop 
do 
var1="1"; 
done 

echo "$var1"; 

的結果是0,而不是1。然而,如果我回應while循環中,其輸出爲1.我知道.sh不能將子進程(子進程)傳遞給父進程。如何更改代碼以反映循環結束後循環中的var1更改?

我看到出口作爲一個選項,但我不知道如何實現它。

+0

我想你應該提供更多的細節,比如什麼是你的循環條件「循環」,因爲沒有指定條件,流程永遠不會進入循環。 – Leafy 2012-10-08 09:30:10

回答

0

我想提供一個樣本循環條件,你的問題「如何修改代碼以反映循環之後的循環中VAR1變化結束?

var1="0" 
loop="1" 

while [ $var1 -ne $loop ] 
do 
     var1="1" 
done 
echo $var1 

希望我們會能夠在您提供更多細節後更好地幫助您。