學習環境變數的作用於用法。
環境變數
命令的查詢路徑與順序
新增自定義路徑到path環境變數
修改和刪除已有的變數
如何讓環境變數立即生效
什麼是環境變數?
要解釋環境變數,得先明白變數是什麼,準確是說shell變數,所謂變數就是計算機中用來記錄乙個值(可能是數值也可能是字元或者字串)的符號,而這些符號將用於不同的運算處理中。通常變數與值是一對一的關係,可以通過表示式讀取它的值並賦值給其他變數,也可以直接指定數值賦值給任意變數。
為了便於運算和處理,大部分程式語言會區分變數的型別,用於分別記錄數值,字元,字串等資料型別。
declare [變數]
建立變數
[變數]=[數值]
用「=」賦值運算子
echo $[變數]
環境變數的作用域比自定義變數大,如shell的環境變數作用於他的自身和它的子程序。
1.當前shell程序私有使用者自定義變數,只在當前shell有效。
2.shell本身內建的變數。
3.從自定義變數匯出的環境變數。
set
顯示當前shell所有變數,包括其內建環境變數,使用者自定義變數及匯出的環境變數。
env
顯示與當前使用者相關的環境變數,還可以讓命令在指定環境中執行。
export
顯示從shell中匯出成為環境變數的變數,也能通過他將自定義變數匯出為環境變數。
實際案例:
temp[變數名稱]=hello[變數設定值]
定義乙個變數
export temp_env[變數名稱]=hello[變數設定值]
將自定義變數匯出為環境變數
參考:linux export命令詳解
如何將自定義變數設定為環境變數
按照變數的生存週期來劃分,變數分為兩種;
1.永久:需要修改配置檔案,變數永久生效。
開啟/etc/profile
新增上想要新增的環境變數,這個環境變數就會變成永久的環境變數。
2.臨時性的:使用export
命令即可,變數在關閉shell時失效。
簡介:我們在shell中輸入乙個命令,shell怎麼知道去**找到這個命令並且執行的呢?答案就是這是通過環境變數path
來進行搜尋的。path
儲存了shell中執行的命令的搜尋路徑。
path
路徑是以:
作為分隔符的!
path=$path:[路徑]
將自定義的絕對路徑新增到path環境變數中,這樣我們就可以在
任意目錄下使用這個【自定義路徑】的命令了。
但是,這樣還有乙個問題,它只對當前的shell有效,我一旦退出終端再開啟就就會發現又失效了,有沒有一種辦法讓我們可以讓它在全域性變數中有效?或者是讓它每次使用的時候自動新增到到path中?有!
在每個使用者的home目錄中,有乙個shell每次啟動時都會預設執行乙個配置指令碼,用來初始化環境,新增一些使用者自定義的環境變數等等。
zsh的配置檔案是.zshrc
命令:echo "path=$path:[自定義路徑]」 >>.zshrc
>>
表示將標準輸出以追加的方式重定義到乙個檔案中
>
表示將標準輸出以覆蓋的方式重定義到乙個檔案中
bash的配置命令是.bashrc
命令:echo 」path=$path:[自定義路徑]" >>.bashrc
命令$
從頭向後開始匹配,刪除符合匹配字串的最短資料
$
從頭向後開始匹配,刪除符合匹配字串的最長資料
$
從尾向前開始匹配,刪除符合匹配字串的最短資料
$
從尾向前開始匹配,刪除符合匹配字串的最長資料
unset
刪除變數
命令source [配置的指令碼檔案]
讓環境變數立即生效。
LINUX環境(二) 環境變數
環境變數 getenv,putenv,setenv,unsetenv environ 環境變數 getenv,putenv,setenv,unsetenv 環境變數 getenv 取得環境變數內容 相關函式 putenv setenv unsetenv 表頭檔案 include 定義函式 char ...
Linux環境(二) 環境變數
環境變數 我們在第2章討論了環境變數。這些變數可以用來控制shell指令碼和其他程式的形為。我們也可以使用他們來配置使用者環境。例如,每乙個使用者都有乙個環境變數,home,定義了其使用者主目錄,作為其會話的起始位置。正如我們所知的,我們由shell提示來測試環境變數 echo home home ...
Linux環境(二) 環境變數
環境變數 我們在第2章討論了環境變數。這些變數可以用來控制shell指令碼和其他程式的形為。我們也可以使用他們來配置使用者環境。例如,每乙個使用者都有乙個環境變數,home,定義了其使用者主目錄,作為其會話的起始位置。正如我們所知的,我們由shell提示來測試環境變數 echo home home ...