bash中變量的種類
阿新 • • 發佈:2018-07-22
引用 9.png 及其 ssi val 命令 查看 劃分 技術
根據變量的生效範圍等標準劃分下面變量類型:
set:查看所有變量(全局變量,局部變量還有函數)
1.局部變量(標準變量,普通變量):生效範圍為當前shell進程---當前會話(session);對當前shell之外的其它shell進程,包括當前shell的子shell進程均無效
echo $$:當前進程編號(4496)
echo $PPID:父進程編號(4272)
直觀查看進程父子關系:pstree -p
2.環境(全局)變量:生效範圍為當前shell進程及其子進程(export=declare -x|env命令可以查看系統中環境變量)
第一種定義方法:name=mage------export name 第二種定義方法:export name=mage 第三種定義方法:declare -x name=mage
3.本地變量:生效範圍為當前shell進程中某代碼片斷,通常指函數
4.位置變量:$1, $2, ...來表示,用於讓腳本在腳本代碼中調用通過命令行傳遞給它的參數
5.特殊變量:$?, $0, $*, $@, $#,$$
變量賦值:name=‘value’
可以使用引用value:
- (1) 可以是直接字串; name=“root"
- (2) 變量引用:name="$USER"
- (3) 命令引用:name=`COMMAND` name=$(COMMAND)
變量引用:${name} $name
- "":弱引用,其中的變量引用會被替換為變量值
- ‘‘:強引用,其中的變量引用不會被替換為變量值,而保持原字符串
顯示已定義的所有變量:set
刪除變量:unset name
bash中變量的種類