目錄
1、環境變數的概念 
2、環境變數的組織方式
3、常見的環境變數 
首頁 運維 linux運維 linux中什麼是環境變數

linux中什麼是環境變數

Nov 30, 2021 pm 05:08 PM
linux 環境變數

在linux中,環境變數指的是系統預先定義的參數;它相當於全域變量,存在於所有的Shell中,具有繼承性,可儲存有關shell會話和工作環境的資訊。

linux中什麼是環境變數

本教學操作環境:linux5.9.8系統、Dell G3電腦。

1、環境變數的概念 

#1.1 環境變數的意義 

環境變數一般是指作業系統中指定運行環境的一些參數,即係統預先定義的參數。它相當於一個指針,想要查看變數的值,需要加上「$」。 

環境變數是bash shell的特性,用來儲存有關shell會話和工作環境的資訊。允許在記憶體中儲存數據,以便運行在shell上的程式和腳本存取。這些資料可以是用來識別使用者、系統、Shell的特性以及任何其它需要儲存的資料。

1.2 環境變數的分類 

#1.2.1 依作用的範圍分 

#在Linux中的變量,可以分為環境變量和本地變量: 

1)環境變量:相當於全域變量,存在於所有的Shell中,具有繼承性; 

2)本地變數:相當於局部變量,只存在當前Shell中,本地變數包含環境變量,非環境變數不具有繼承性。

1.2.2 依生存週期分 

1)永久:需要修改設定文件,變數永久生效; 

2)暫時:使用export定義,關閉Shell後失效。

2、環境變數的組織方式

linux中什麼是環境變數

每個程式都有一個環境表,環境表是一個字元指標陣列,每個指標指向一個以'\0'結尾的環境字串。 Main函數的第三個參數就是環境表位址。

3、常見的環境變數 

#3.1 PATH 

此變數指定指令的搜索路徑。 

【範例】 

linux中什麼是環境變數

「釋出:從中可以看出,在目前目錄下,PATH的值。它表示在目前目錄下執行的每一條指令的搜尋路徑,每個目錄以冒號分隔。當執行一條指令時,系統就會從系統檔案中去尋找,找到了就執行;否則不執行。 

3.2 HOME 

#此變數指定使用者的主工作目錄,即使用者登入Linux系統時,預設的目錄。

3.2.1 一般使用者下的主工作目錄 

#【範例】 

linux中什麼是環境變數

##3.2 .2 超級用戶下的主工作目錄 ##【範例】 

linux中什麼是環境變數釋:環境變數是一個變量,它的值隨著用戶的不同而不同。 

3.3 HISTSIZE #此變數指定保存歷史指令的數目。 

【範例】 

linux中什麼是環境變數 釋出:在Linux系統中最多保存1000個指令記錄。 

3.4 LOGNAME #此變數指定顯示使用者的登入名稱。

【範例】 

linux中什麼是環境變數

#3.5 HOSTNAME 此變數指定主機名稱 

【範例】 

linux中什麼是環境變數

#3.6 SHELL 該變數指定使用者目前使用的解析器。

【範例】 

linux中什麼是環境變數

4、修改、修改環境變數的指令 

# #4.1 echo 

此指令用來顯示某個環境變數的值。 

4.2 env 

#

此指令指定顯示所有的環境變數和值。 

【範例】 

linux中什麼是環境變數

#4.3 set 

##此指令指定本機變數。

【範例】 

linux中什麼是環境變數

#4.4 export 

此指令指定設定一個新的環境變數。 

【範例】 

linux中什麼是環境變數

注意:環境變數一般以英文字母大寫加上底線表示。 

4.5 unset 

#此指令指定清除環境變數。

【範例】 

linux中什麼是環境變數

#4.6 readonly 

此指令用於設定只讀取環境變數。

【範例】 

linux中什麼是環境變數 釋:將環境變數MY_ENV設定為唯讀模式後,就不能對它進行修改了,直到使用者登出登入後才失效。

5、存放環境變數的檔案 

#5.1 /etc/profile 

該檔案的功能是當使用者登入時取得系統的環境變量,只取得一次。 

5.2 /etc/bashrc 

當執行完/etc/profile檔案後,使用者想要開啟bash Shell就會讀取該檔案。如果想每次開啟bash Shell後都執行某些操作,可以在該檔案中設定。 

5.3 ~/.bash_profile 

每個使用者都可使用該檔案輸入專用於自己使用的shell資訊。當使用者登入時,該檔案僅執行一次,預設情況下,它會設定一些環境變量,執行使用者的.bashrc檔案。 

單一使用者此檔案的修改只會影響到他以後的每一次登陸系統。因此,可以在這裡設定單一使用者的特殊的環境變數或特殊的操作,那麼它在每次登陸的時候都會去獲取這些新的環境變數或做某些特殊的操作,但是僅僅在登陸時

5.4 ~/.bashrc 

該文件包含專用於單一人的bash shell的bash訊息,當登入時以及每次開啟一個新的shell時,該文件被讀取。 

單一使用者此檔案的修改會影響到他以後的每一次登陸系統和每一次新開一個bash。因此,可以在這裡設定單一使用者的特殊的環境變數或特殊的操作,那麼每次它新登陸系統或新開一個bash,都會去取得對應的特殊的環境變數和特殊操作。 

5.5 ~/.bash_logout 

當每次退出系統(退出bash shell)時,執行該檔案。

6、透過程式碼取得環境變數 

【範例1】 

linux中什麼是環境變數

註:命令列第3個參數是環境表位址,是字元型陣列指標。

運行結果: 

linux中什麼是環境變數

【範例2】透過第三方變數environ取得 

linux中什麼是環境變數##運行結果: 

linux中什麼是環境變數注意:libc中定義的全域變數environ指向環境變數表,因為environ沒有包含在任何頭檔中,所以在使用時要用extern宣告。 

7、透過系統呼叫取得或設定環境變數 

#通常用getenv和putenv函數存取特定的環境變量,而不是用environ變數。但是,如果要查看整個環境,則必須使用environ指標。 

【範例1】 

##運行結果: linux中什麼是環境變數

##【範例2】 

linux中什麼是環境變數

運行結果: 

linux中什麼是環境變數

#釋義:「export MY_ENV=Love」匯出環境變量,可以被子程式繼承下去;而「 MY_ENV=Love”導出的是普通變量,不具有繼承性(與getenv函數一樣)。

相關推薦:《Linux影片教學

以上是linux中什麼是環境變數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1318
25
PHP教程
1269
29
C# 教程
1248
24
Linux體系結構:揭示5個基本組件 Linux體系結構:揭示5個基本組件 Apr 20, 2025 am 12:04 AM

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

git怎麼查看倉庫地址 git怎麼查看倉庫地址 Apr 17, 2025 pm 01:54 PM

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

vscode上一步下一步快捷鍵 vscode上一步下一步快捷鍵 Apr 15, 2025 pm 10:51 PM

VS Code 一步/下一步快捷鍵的使用方法:一步(向後):Windows/Linux:Ctrl ←;macOS:Cmd ←下一步(向前):Windows/Linux:Ctrl →;macOS:Cmd →

notepad怎麼運行java代碼 notepad怎麼運行java代碼 Apr 16, 2025 pm 07:39 PM

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

sublime寫好代碼後如何運行 sublime寫好代碼後如何運行 Apr 16, 2025 am 08:51 AM

在 Sublime 中運行代碼的方法有六種:通過熱鍵、菜單、構建系統、命令行、設置默認構建系統和自定義構建命令,並可通過右鍵單擊項目/文件運行單個文件/項目,構建系統可用性取決於 Sublime Text 的安裝情況。

Linux的主要目的是什麼? Linux的主要目的是什麼? Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

laravel安裝代碼 laravel安裝代碼 Apr 18, 2025 pm 12:30 PM

要安裝 Laravel,需依序進行以下步驟:安裝 Composer(適用於 macOS/Linux 和 Windows)安裝 Laravel 安裝器創建新項目啟動服務訪問應用程序(網址:http://127.0.0.1:8000)設置數據庫連接(如果需要)

git軟件安裝 git軟件安裝 Apr 17, 2025 am 11:57 AM

安裝 Git 軟件包括以下步驟:下載安裝包運行安裝包驗證安裝配置 Git安裝 Git Bash(僅限 Windows)

See all articles