Linux 高階版 1 4環境變數

2021-10-01 03:35:07 字數 2498 閱讀 6938

學習環境變數的作用於用法。

環境變數

命令的查詢路徑與順序

新增自定義路徑到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 ...