天天看點

04 shell - 變量

按照慣例,Shell變量由全大寫字母加下劃線組成,有兩種類型的Shell變量:

1.環境變量

環境變量可以從父程序傳給子程序,是以Shell程序的環境變量可以從目前Shell程序傳給fork出來的子程序。用printenv指令可以顯示目前Shell程序的環境變量。

2.本地變量

隻存在于目前Shell程序,用set指令可以顯示目前Shell程序中定義的所有變量(包括本地變量和環境變量)和函數。

環境變量是任何程序都有的概念,而本地變量是Shell特有的概念。在Shell中,環境變量和本地變量的定義和用法相似。在Shell中定義或指派一個變量:

itcast$ VARNAME=value
           

注意等号兩邊都不能有空格,否則會被Shell解釋成指令和指令行參數。

一個變量定義後僅存在于目前Shell程序,它是本地變量,用export指令可以把本地變量導出為環境變量,定義和導出環境變量通常可以一步完成:

itcast$ export VARNAME=value
           

也可以分兩步完成:

itcast$ VARNAME=value
itcast$ export VARNAME
           
itcast$ unset VARNAME
           
itcast$ echo $SHELL