Linux 配置環境變量
前面小節介紹了 Linux 系統中如何查看全局環境變量和局部環境變量,本小節介紹如何在 Linux 系統中配置全局環境變量和局部環境變量。
1. 環境變量命令規范
在 Linux 系統中的 bash shell 有個慣例,全部的系統環境變量名都使用大寫字母和 _ 組成,若是自定義的局部環境變量或者 shell 腳本,則一般使用小寫字母和 _ 組成,這樣寫的好處是自定義系統變量可以避免覆蓋原有的系統全局變量,對生產環境業務造成嚴重的影響。系統的環境變量可以通過 = 賦值,這些值可以是數字,也可以是字符串,變量名、=、變量值 三者之間不能有空格。
2. 配置局部環境變量
使用 ssh 方式登錄了 CentOs 8 系統之后,就會創建一個 shell 進程,默認的 shell 程序就開始運行了,然后就可以在該 shell 進程內自定義局部變量。
2.1 賦值一個局部變量
登錄 CentOs 終端之后,可以使用 = 賦值的方式自定義局部變量,命令如下:
echo $my_val
my_val=nice
echo $my_val
執行結果如下圖:

Tips:注意
變量名、=、值之間不能有空格,若變量值中間有空格,則賦值的時候需要將變量的值用"包起來,如my_val="very good",若不用"包起來,則空格前面和后面會被隔開當做是 Linux 命令處理了,會出現異常。
2.2 在 shell 子進程中賦值局部變量
在當前 shell 進程中的子進程中賦值命令如下:
my_val="nice"
echo $my_val
bash
my_val="nice son"
echo $my_val
exit
echo $my_val
執行結果如下圖:

Tips:在
shell子進程中賦值的變量,在子進程結束之后,這個子進程中的局部變量值就會銷毀。
3. 配置全局環境變量
3.1 使用 export 設置全局環境變量
上述 shell 子進程中賦值的變量若想要在子進程結束的時候不銷毀,則可以使用如下命令設置為全局變量,命令如下:
test_val="dog"
echo $test_val
bash
echo $test_val
exit
export test_val
bash
echo $test_val
exit
執行結果如下圖:

Tips:注意在
shell子進程中不可使用export命令,注意此時其他新打開的shell進程窗口無法讀到$test_val變量。
3.2 設置所有新窗口 shell 進程中能查看的全局環境變量
在 /etc/profile 文件中可配置全局環境變量,使用 vim 命令打開 /etc/profile 文件,在文件末尾添加 test_val="my test dog",命令如下:
vim /etc/profile
如下圖所示:

如上圖所示配置好之后,執行如下命令:
source /etc/profile
echo $test_val
執行結果如下圖:

在上圖變量配置好了之后可以在新打開的 shell 進程窗口執行如下命令:
echo $test_val
執行結果如下圖:

Tips:新打開
shell進程會讀到/etc/profile中的全局變量。
4. 小結
本小節介紹了如何自定義局部環境變量和全局環境變量,其中在 shell 進行中自定義的變量可以使用 export 命令讓這個變量對 shell 子進程可見,需要注意的是 export 命令不可在 shell 子進程中使用,最后還介紹了如何在 /etc/profile 文件中配置全局環境變量,然后使用 source /etc/profile 就可以查看到這個變量的值了,新打開的 shell 窗口也能訪問到這個變量值。
愛因詩賢 ·
2025 imooc.com All Rights Reserved |