1、命令簡介
export 命令為 Shell 內建命令,用于設置或顯示環境變量,環境變量包含變量與函數。
在 Shell 中執行程序時,Shell 會提供一組環境變量。export 可新增、刪除或修改環境變量,供后續被執行的程序使用。export 的作用效果僅限于當前登錄。
2、命令格式
3、選項說明
4、常用示例
(1)定義環境變量并賦值。
(2)修改指明 Shell 命令搜索路徑的環境變量 PATH。
查看是否已經設置好,可以使用命令export -p命令來查看,也可以使用 echo 命令打印變量內容。
(3)export 用于 Shell 腳本。
用戶登錄到 Linux 系統后,系統將啟動一個用戶 Shell。
在這個 Shell 中,可以使用 Shell 命令或聲明變量,也可以創建并運行 Shell 腳本程序。
系統將創建一個子 Shell 進程。此時,系統中將有兩個 Shell 進程,一個是登錄時系統啟動的 Shell 進程,另一個是系統為運行腳本創建的 Shell 進程。
當一個腳本運行完畢,它的腳本 Shell 進程將終止,可以返回到執行該腳本之前的 Shell。從這種意義上來 說,用戶可以有許多 Shell 進程,每個 Shell 進程都是由其父 Shell 進程派生的。
如果在一個 Shell 腳本中定義了一個變量,該腳本運行時,這個定義的變量只是該腳本內的一個局部變量,子 Shell 無法引用它。
要使某個變量可以在子 Shell 中被引用,可以使用 export 命令對已定義的變量進行導出,稱為導出變量。系統在創建每一個新的 Shell 時會拷貝導出變量,子 Shell 可以訪問或修改導出變量,但是這種修改父 Shell 看不到。
例如腳本 test1.sh 中調用腳本 test2.sh,test2.sh 中使用 test1.sh 定義的變量 shareVar。
test2.sh 定義如下:
執行 test1.sh 輸出結果如下:
5、Linux 設置環境變量的三種方法
(1)使用 export 命令。
注意:直接使用 export 設置的變量都是臨時變量,也就是說退出當前的 Shell 為該變量定義的值便不會生效了。我們可以使用如下兩種方式使變更永久有效。
(2)修改 /etc/bashrc 或 /etc/profile,加入如下行,對所有用戶永久生效。
注意:修改完這個文件必須要使用如下命令執行配置文件的內容,在不用重啟系統的情況下使修改的內容生效。
(3)修改 ~/.bashrc 或者 ~/.bash_profile 文件,加入如下行,只對當前用戶永久生效。
修改這個文件之后同樣也需要使用 source 或者是 . 命令使配置文件生效。