

1 全局變量
shell定義的全局變量在任何位置都可以訪問,默認情況下,shell里面定義的任何變量全局變量。舉例如下
#/bin/bash
function test {
echo $[ $value * 2 ]
}
value=9
value=$(test)
echo "result is $value"
運行后結果為
result is 18
這里可以發現函數內部是可以訪問value這個全局變量的,雖然全局變量的定義出現在函數的后面也沒有關系。
2 局部變量
在變量的前面加上關鍵字local,這個變量就只存在對應的作用域里面,比如在函數里面用local的話,對應的變量生命周期只存在函數內部,外部無法訪問。舉例如下:
#/bin/bash
function test {
local value=$[ $data + 3 ]
}
data=2
value=4
test
echo "value is $value"
運行后結果為:
value is 4
可以發現在test函數內部定義了一個局部變量,函數內部對value進行修改后,外面的value變量并沒有變化。
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。
發表評論
請登錄后評論...
登錄后才能評論