第6章 使用Linux環(huán)境變量

[TOC]

什么是環(huán)境變量

為了方便管理系統(tǒng),在shell會(huì)話過程定義了存儲(chǔ)數(shù)據(jù)的變量。

環(huán)境變量有兩種:

  • 全局環(huán)境變量(所有shell可見)
  • 局部環(huán)境變量(只有創(chuàng)建的shell才可見)

提醒:

  • 全局變量命名習(xí)慣全大寫,局部變量名不全大寫
  • 局部變量可以暴露到全局,用export命令
  • 無法用export修改已存在的全局變量

設(shè)置環(huán)境變量

定義局部變量語法

# 等于號(hào)之間不能存在空格
NAME="張家泳"
age=23

使用變量

echo $NAME

定義全局變量

NAME="daifee"
export NAME

刪除環(huán)境變量

unset NAME

默認(rèn)環(huán)境變量

  • 系統(tǒng)設(shè)置的環(huán)境變量
  • shell程序設(shè)置的環(huán)境變量

設(shè)置持久化環(huán)境變量

bash shell啟動(dòng)時(shí)會(huì)執(zhí)行幾個(gè)啟動(dòng)文件。具體執(zhí)行哪幾個(gè),由bash shell的啟動(dòng)方式?jīng)Q定。bash shell有3種啟動(dòng)方式:

登錄shell

登錄時(shí)啟動(dòng)的shell

啟動(dòng)文件:

  1. /etc/profile 默認(rèn)的主啟動(dòng)文件
  2. $HOME/.bash_profile
  3. $HOME/.bashrc 一般被其他啟動(dòng)文件引用
  4. $HOME/.bash_login
  5. $HOME/.profile

啟動(dòng)文件2、4、5,按順序查找,只執(zhí)行第一個(gè)被查找到的。

交互式shell進(jìn)程

登錄后再在終端啟動(dòng)的shell

只會(huì)執(zhí)行$HOME/.bashrc啟動(dòng)文件

非交互式shell進(jìn)程

系統(tǒng)執(zhí)行shell script啟動(dòng)的shell

執(zhí)行BASH_ENV指定的啟動(dòng)文件,如果沒有,則不執(zhí)行啟動(dòng)文件(主要靠繼承父shell獲取變量數(shù)據(jù))。

環(huán)境變量持久化

將環(huán)境變量定義在上面提到的文件中,最好是下面兩個(gè)文件:

  • /etc/profile.d/文件名.sh 所有用戶可用
  • $HOME/.bashrc 自己可用
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容