shell腳本的變量
定義變量
直接輸入 變量名=值 即可
注意:
變量名和等号之間不能有空格,有空格會報錯,這可能其他的程式設計語言都不一樣。
同時,變量名的命名須遵循如下規則:
命名隻能使用英文字母,數字和下劃線,首個字元不能以數字開頭。
中間不能有空格,可以使用下劃線(_)。
不能使用标點符号。
不能使用bash裡的關鍵字(可用help指令檢視保留關鍵字)。

使用變量
隻需要在變量前面加上 美元符$就可以使用變量啦 如圖 輸出 aaa bbb ccc
使用變量時可以加上花括号{} 如 echo ${aaa} 這是因為 有時候會遇到這種情況 echo $aaa123 解釋器就會把 $aaa123當成一個變量(其值為空),代碼執行結果就不是我們期望的樣子了。這時候 就要給變量加上{} ${aaa}123
已定義的變量,可以被重新定義,
隻讀變量
使用 readonly 指令可以将變量定義為隻讀變量,隻讀變量的值不能被改變。
下面的例子嘗試更改隻讀變量,結果報錯,aaa還是第一次指派的值:
删除變量
使用 unset 指令可以删除變量。文法:
unset aaa
變量被删除後不能再使用。可以重新定義
unset 指令不能删除隻讀變量。
變量類型
運作shell時,會同時存在三種變量:
- 局部變量 局部變量在腳本或指令中定義,僅在目前shell執行個體中有效,其他shell啟動的程式不能通路局部變量。
- 環境變量 所有的程式,包括shell啟動的程式,都能通路環境變量,有些程式需要環境變量來保證其正常運作。必要的時候shell腳本也可以定義環境變量。
- shell變量 shell變量是由shell程式設定的特殊變量。shell變量中有一部分是環境變量,有一部分是局部變量,這些變量保證了shell的正常運作