首頁 系統教程 Linux 三類重要Linux檔案的用途與區別

三類重要Linux檔案的用途與區別

Feb 09, 2024 pm 06:45 PM
linux linux教程 linux系統 linux指令 shell腳本 嵌入式linux linux入門 linux學習

Linux系統中,有三種檔案類型出現的非常頻繁,那就是profile、bash_profile、bashrc檔案。因為名稱的緣故,很多人會把這三類文件的作用記混,因此我們今天就來詳細盤點一下這三類文件的作用及區別。

1. profile檔

#1.1 profile檔案的作用

profile(/etc/profile),用於設定係統層級的環境變數和啟動程序,在這個檔案下設定會對所有使用者生效。

當使用者登入(login)時,檔案會被執行,並從/etc/profile.d目錄的設定檔中尋找shell設定。

1.2 在profile中加入環境變數

一般不建議在/etc/profile檔案中加入環境變量,因為在這個檔案中新增的設定會對所有使用者起作用。

當必須新增時,我們可以按以下方式新增:

如,新增一個HOST值為magedu.com的環境變數:

export HOST=magedu.com

新增時,可以在行尾使用;號,也可以不使用。

一個變數名可以對應多個變數值,多個變數值需要使用:進行分隔。

新增環境變數後,需要重新登入才能生效,也可以使用source指令強制立即生效:

source /etc/profile

查看是否生效可以使用echo指令:

HOST

magedu.com

2. bashrc檔案

bashrc檔案用於配置函數或別名。 bashrc檔案有兩種層級:

系統級的位於/etc/bashrc、用戶級的位於~/.bashrc,兩者分別會對所有使用者和目前使用者生效。

bashrc檔案只會對指定的shell類型起作用,bashrc只會被bash shell呼叫。

3. bash_profile檔

bash_profile只對單一使用者有效,檔案儲存位於~/.bash_profile,該檔案是一個使用者層級的設置,可以理解為某一個使用者的profile目錄下。

這個檔案同樣也可以用來設定環境變數和啟動程序,但只針對單一使用者有效。

和profile檔案類似,bash_profile也會在使用者登入(login)時生效,也可以用來設定環境變理。

但與profile不同,bash_profile只會對目前使用者生效。

4. 差異總結

#這三種文件類型的差異用一句話表達就是:

/etc/profile,/etc/bashrc 是系統全域環境變數設定;~/.profile,~/.bashrc使用者家目錄下的私有環境變數設定。

三類重要Linux檔案的用途與區別當登入系統時候取得一個shell進程時,其讀取環境設定檔如下:

4.1 首先讀入全域環境變數設定檔/etc/profile,然後根據其內容讀取額外的設定的文檔,如/etc/profile.d和/etc/inputrc;

4.2 根據不同使用者帳號,於其家目錄內讀取~/.bash_profile;

讀取失敗則會讀取~/.bash_login;

再失敗則讀取~/.profile(這三個文件設定基本上無差別,僅讀取上有優先關係);

4.3 最後,根據使用者帳號讀取~/.bashrc。

至於~/.profile與~/.bashrc都具有個人化自訂功能,但~/.profile可以設定本用戶專有的路徑、環境變數等,它只能登入的時候執行一次。

###~/.bashrc也是某使用者專有設定文檔,可以設定路徑、指令別名,每次shell script的執行都會使用它一次。 ###

以上是三類重要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脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前 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)

Linux的5支支柱:了解他們的角色 Linux的5支支柱:了解他們的角色 Apr 11, 2025 am 12:07 AM

Linux系統的五大支柱是:1.內核,2.系統庫,3.Shell,4.文件系統,5.系統工具。內核管理硬件資源並提供基本服務;系統庫為應用程序提供預編譯函數;Shell是用戶與系統交互的接口;文件系統組織和存儲數據;系統工具用於系統管理和維護。

oracle如何查看實例名 oracle如何查看實例名 Apr 11, 2025 pm 08:18 PM

在 Oracle 中查看實例名的方法有三種:命令行中使用 "sqlplus" 和 "select instance_name from v$instance;" 命令。在 SQL*Plus 中使用 "show instance_name;" 命令。通過操作系統的任務管理器、Oracle Enterprise Manager 或檢查環境變量 (Linux 上的 ORACLE_SID)。

Linux實際上有什麼好處? Linux實際上有什麼好處? Apr 12, 2025 am 12:20 AM

Linux適用於服務器、開發環境和嵌入式系統。 1.作為服務器操作系統,Linux穩定高效,常用於部署高並發應用。 2.作為開發環境,Linux提供高效的命令行工具和包管理系統,提升開發效率。 3.在嵌入式系統中,Linux輕量且可定制,適合資源有限的環境。

oracle數據庫卸載教程 oracle數據庫卸載教程 Apr 11, 2025 pm 06:24 PM

要卸載 Oracle 數據庫:停止 Oracle 服務,移除 Oracle 實例,刪除 Oracle 主目錄,清除註冊表項(僅限 Windows),刪除環境變量(僅限 Windows)。卸載前請備份數據。

將Docker與Linux一起使用:綜合指南 將Docker與Linux一起使用:綜合指南 Apr 12, 2025 am 12:07 AM

在Linux上使用Docker可以提高開發和部署效率。 1.安裝Docker:使用腳本在Ubuntu上安裝Docker。 2.驗證安裝:運行sudodockerrunhello-world。 3.基本用法:創建Nginx容器dockerrun--namemy-nginx-p8080:80-dnginx。 4.高級用法:創建自定義鏡像,使用Dockerfile構建並運行。 5.優化與最佳實踐:使用多階段構建和DockerCompose,遵循編寫Dockerfile的最佳實踐。

oracle安裝之後如何使用 oracle安裝之後如何使用 Apr 11, 2025 pm 07:51 PM

安裝 Oracle 後,可通過以下步驟使用:創建數據庫實例。連接到數據庫。創建用戶。創建表。插入數據。查詢數據。導出數據。導入數據。

apache80端口被佔用怎麼辦 apache80端口被佔用怎麼辦 Apr 13, 2025 pm 01:24 PM

當 Apache 80 端口被佔用時,解決方法如下:找出佔用該端口的進程並關閉它。檢查防火牆設置以確保 Apache 未被阻止。如果以上方法無效,請重新配置 Apache 使用不同的端口。重啟 Apache 服務。

apache怎麼啟動 apache怎麼啟動 Apr 13, 2025 pm 01:06 PM

啟動 Apache 的步驟如下:安裝 Apache(命令:sudo apt-get install apache2 或從官網下載)啟動 Apache(Linux:sudo systemctl start apache2;Windows:右鍵“Apache2.4”服務並選擇“啟動”)檢查是否已啟動(Linux:sudo systemctl status apache2;Windows:查看服務管理器中“Apache2.4”服務的狀態)啟用開機自動啟動(可選,Linux:sudo systemctl

See all articles