變量的定義
name="mini_xiang"
變量名命名注意事項:
* 變量名和“=”之間不能有空格。
* 命名只能使用英文字母,數字和下劃線,首字符不能使用數字。
* 中間不能使用空格。
* 不能使用標點符號
* 不能使用bash的關鍵字(可用help命令查看保留關鍵字)。
使用變量
name="mini_xiang"
echo $name
echo ${name}
使用變量時,在變量名前加$
符號即可。
{}
是可選的主要是爲了防止解釋器識別不全的情況。
只讀變量
使用readonly
命令可以將命令定義爲只讀變量,只讀變量的值不可以被修改
[root@localhost ~]# name="mini_xiang"
[root@localhost ~]# readonly name
[root@localhost ~]# name="qwe"
bash: name: readonly variable
修改只讀變量系統會報錯
[root@localhost ~]# readonly name1="mini"
[root@localhost ~]# name1="qweqwe"
bash: name1: readonly variable
刪除變量
使用unset
命令刪除變量
[root@localhost ~]# name2="asdasd"
[root@localhost ~]# echo $name2
asdasd
[root@localhost ~]# unset name2
[root@localhost ~]# echo $name2
unset
不能刪除只讀變量
變量類型
運行shell時,會同時存在三種變量:
1. 局部變量
局部變量在腳本或命令中定義,僅在當前shell實例中有效,其他shell啓動的程序不能訪問局部變量。
2. 環境變量
所有的程序,包括shell啓動的程序,都能訪問環境變量,有些程序需要環境變量來保證其正常運行。必要的時候shell腳本也可以定義環境變量。
3. shell變量
shell變量是由shell程序設置的特殊變量。shell變量中有一部分是環境變量,有一部分是局部變量,這些變量保證了shell的正常運行