1.命令代換:`或 $()
由反引號括起來的也是一條命令,Shell先執行該命令,然後將輸出結果立刻代換到當前命令行中。例如定義一個變量存放date
命令的輸出:
$ DATE=`date`
$ echo $DATE
命令代換也可以用$()
表示:
$ DATE=$(date)
2.本地變量
-
只存在於當前Shell進程,用
set
命令可以顯示當前Shell進程中定義的所有變量(包括本地變量和環境變量)和函數。
環境變量是任何進程都有的概念,而本地變量是Shell特有的概念。在Shell中,環境變量和本地變量的定義和用法相似。在Shell中定義或賦值一個變量:
$ VARNAME=value
注意等號兩邊都不能有空格,否則會被Shell解釋成命令和命令行參數。
一個變量定義後僅存在於當前Shell進程,它是本地變量,用export
命令可以把本地變量導出爲環境變量,定義和導出環境變量通常可以一步完成:
$ export VARNAME=value
也可以分兩步完成:
$ VARNAME=value $ export VARNAME
用unset
命令可以刪除已定義的環境變量或本地變量。
$ unset VARNAME
3.算術代換:$(())
用於算術計算,$(())
中的Shell變量取值將轉換成整數,例如:
$ VAR=45
$ echo $(($VAR+3))
$(())
中只能用+-*/和()運算符,並且只能做整數運算。