Shell變數

weixin_34402408發表於2017-12-06

定義變數

定義變數時,變數名不加美元符號($),如:

name="yang"

注意,變數名和等號之間不能有空格。同時,變數名的命名須遵循如下規則:

首個字元必須為字母(a-z,A-Z)。

中間不能有空格,可以使用下劃線(_)。

不能使用標點符號。

不能使用bash裡的關鍵字(可用help命令檢視保留關鍵字)。

使用變數

使用一個定義過的變數,只要在變數名前面加美元符號即可:

echo $name

echo ${name}

變數名外面的花括號是可選的,加不加都行,加花括號是為了幫助直譯器識別變數的邊界。

推薦給所有變數加上花括號,這是個好的程式設計習慣。

只讀變數

readonly 變數名

刪除變數

unset 變數名

變數型別

執行shell時,會同時存在三種變數:

1) 區域性變數區域性變數在指令碼或命令中定義,僅在當前shell例項中有效,其他shell啟動的程式不能訪問區域性變數。

2) 環境變數所有的程式,包括shell啟動的程式,都能訪問環境變數,有些程式需要環境變數來保證其正常執行。必要的時候shell指令碼也可以定義環境變數。

3) shell變數shell變數是由shell程式設定的特殊變數。shell變數中有一部分是環境變數,有一部分是區域性變數,這些變數保證了shell的正常執行。

相關文章