2014-10-18 45 views

回答

1

問題是在這個調用:

b=`aple` 

其中在子shell調用aple功能,因此在子shell中所做的更改都將丟失,在父shell不可見。

調用你的函數爲:

aple 
echo $a 
2 

根據您的意見,如果你想分配一個值b也然後讓你的函數爲:

a=1 
b= 
aple() { a=2; b="apel"; } 

然後把它作爲:

aple 
echo "$b:$a" 
apel:2 
+0

如果我還想要使用b ='apel',是否有更新它? – tak89 2014-10-18 10:01:26

+0

''''''apel''''''''''''總是會創建一個子shell,因此在父shell中的變化將會丟失。 – anubhava 2014-10-18 10:16:20