請問各位linux高手們,目錄下的profile與bashr

時間 2021-07-17 05:25:21

1樓:匿名使用者

bashrc與profile的區別

要搞清bashrc與profile的區別,首先要弄明白什麼是互動式shell和非互動式shell,什麼是login shell 和non-login shell。

互動式模式就是shell等待你的輸入,並且執行你提交的命令。這種模式被稱作互動式是因為shell與使用者進行互動。這種模式也是大多數使用者非常熟悉的:

登入、執行一些命令、簽退。當你簽退後,shell也終止了。 shell也可以執行在另外一種模式:

非互動式模式。在這種模式下,shell不與你進行互動,而是讀取存放在檔案中的命令,並且執行它們。當它讀到檔案的結尾,shell也就終止了。

bashrc與profile都用於儲存使用者的環境資訊,bashrc用於互動式non-loginshell,而profile用於互動式login shell。系統中存在許多bashrc和profile檔案,下面逐一介紹:

/etc/pro此檔案為系統的每個使用者設定環境資訊,當第一個使用者登入時,該檔案被執行.

並從/etc/profile.d目錄的配置檔案中搜集shell的設定.

/etc/bashrc:為每一個執行bash shell的使用者執行此檔案.當bash shell被開啟時,該檔案被讀取。

有些linux版本中的/etc目錄下已經沒有了bashrc檔案。

~/. pro每個使用者都可使用該檔案輸入專用於自己使用的shell資訊,當使用者登入時,該

檔案僅僅執行一次!預設情況下,它設定一些環境變數,然後執行使用者的.bashrc檔案.

~/.bashrc:該檔案包含專用於某個使用者的bash shell的bash資訊,當該使用者登入時以及每次開啟新的shell時,該檔案被讀取.

另外,/etc/profile中設定的變數(全域性)的可以作用於任何使用者,而~/.bashrc等中設定的變數(區域性)只能繼承/etc/profile中的變數,他們是"父子"關係.

某網友總結如下:

/etc/profile,/etc/bashrc 是系統全域性環境變數設定

~/.profile,~/.bashrc使用者家目錄下的私有環境變數設定

當登入系統時候獲得一個shell程序時,其讀取環境設定檔有三步

1首先讀入的是全域性環境變數設定檔/etc/profile,然後根據其內容讀取額外的設定的文件,如

/etc/profile.d和/etc/inputrc

2然後根據不同使用者帳號,去其家目錄讀取~/.bash_profile,如果這讀取不了就讀取~/.bash_login,這個也讀取不了才會讀取

~/.profile,這三個文件設定基本上是一樣的,讀取有優先關係

3然後在根據使用者帳號讀取~/.bashrc

至於~/.profile與~/.bashrc的不區別

都具有個性化定製功能

~/.profile可以設定本使用者專有的路徑,環境變數,等,它只能登入的時候執行一次

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

出處

2樓:碼大牛

我只知道bashrc是會影響你的終端啟動引數的。你可以寫一些指令碼放到這裡,然後你啟動終端後就會自動執行。很多程式的環境變數都需要寫到bashrc這個文字里。

3樓:大大蟲

bashrc用於互動式non-loginshell,而profile用於互動式login shell

/etc/profile:為系統的每個使用者設定環境資訊,當一個使用者登入時,該檔案被執行

/etc/bashrc:為每一個執行bash shell的使用者執行此檔案.當bash shell被開啟時,該檔案被讀取。也就是說,當使用者shell執行了bash時,執行這個檔案

4樓:網際網路哈密西瓜

/etc/profile:此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行.

/etc/bashrc:為每一個執行bash shell的使用者執行此檔案.當bash shell被開啟時,該檔案被讀取.

5樓:匿名使用者

簡單點應該是profile是全域性變數,開機的時候就會呼叫的,.bashrc是你所使用使用者的變數,只有你登入相應使用者的時候才會呼叫

6樓:廣智

profile是每次系統登陸的時候家在的 bashrc只要新開一個視窗都會載入

7樓:匿名使用者

給你幾個使用者配置引數全的吧。

/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc很容易混淆,他們之間有什麼區別?它們的作用到底是什麼?

/etc/profile: 用來設定系統環境引數,比如$path. 這裡面的環境變數是對系統內所有使用者生效的。

/etc/bashrc: 這個檔案設定系統bash shell相關的東西,對系統內所有使用者生效。只要使用者執行bash命令,那麼這裡面的東西就在起作用。

~/.bash_profile: 用來設定一些環境變數,功能和/etc/profile 類似,但是這個是針對使用者來設定的,也就是說,你在/home/user1/.

bash_profile 中設定了環境變數,那麼這個環境變數只針對 user1 這個使用者生效.

~/.bashrc: 作用類似於/etc/bashrc, 只是針對使用者自己而言,不對其他使用者生效。

另外/etc/profile中設定的變數(全域性)的可以作用於任何使用者,而~/.bashrc等中設定的變數(區域性)只能繼承/etc/profile中的變數,他們是"父子"關係.

~/.bash_profile 是互動式、login 方式進入 bash 執行的,意思是隻有使用者登入時才會生效。

~/.bashrc 是互動式 non-login 方式進入 bash 執行的,使用者不一定登入,只要以該使用者身份執行命令列就會讀取該檔案。

linux作業系統是什麼意思

8樓:哇哎西西

linux(i/ˈlɪnəks/ lin-əks)是一種自由和開放原始碼的類unix 作業系統。該作業系統的核心由林納斯·託瓦茲在2023年10月5日首次釋出,在加上使用者空間的應用程式之後,成為 linux 作業系統。

linux 也是自由軟體和開放源**軟體發展中最著名的例子。

只要遵循 gnu 通用公共許可證(gpl),任何個人和機構都可以自由地使用 linux 的所有底層源**,也可以自由地修改和再發布。大多數 linux 系統還包括像提供 gui 的 x window 之類的程式。

9樓:老男孩教育

linux,全稱gnu/linux,是一種免費使用和自由傳播的類unix作業系統,其核心由林納斯·本納第克特·託瓦茲於2023年10月5日首次釋出,它主要受到minix和unix思想的啟發,是一個基於posix和unix的多使用者、多工、支援多執行緒和多cpu的作業系統。它能執行主要的unix工具軟體、應用程式和網路協議。它支援32位和64位硬體。

linux繼承了unix以網路為核心的設計思想,是一個效能穩定的多使用者網路作業系統。linux有上百種不同的發行版,如基於社群開發的debian、archlinux,和基於商業開發的red

hat enterprise linux、suse、oracle linux等。

10樓:fate天機

一般來說linux的系統很多遊戲是玩不好的,windows支援的很多軟體linux都不能玩,這點我深有體會。

11樓:

linux需要wine才能執行windows上的軟體,但安裝軟體需要複雜的編譯才能完成,推薦你還是把linux換windows吧,一張windows系統盤就行了~

12樓:o藥

是的,linux是一種自由和開放原始碼的類unix作業系統.主要是安全,沒有大範圍被應用(用的人少),而且受病毒和黑客攻擊非常少,主要用於伺服器。

不支援的話,那就只要找支援linux系統的軟體來替代,沒有的話,那只有等別人開放咯。

linux作業系統共有幾種版本?

13樓:老男孩教育

linux發行版本主要以下幾種

01 ubuntu 桌面版系統

對於不擅長系統操作命令的人員,使用比較方便02 suse 網路服務功能強的系統

如果想把伺服器充當路由裝置,或郵件伺服器,可以關注03 debian 安全性較好系統

有些對系統安全性要求高的企業會作為優選

04 redhat 紅帽公司官方系統

是很多國企或外企伺服器中常用系統,需要進行付費,有官方服務支援05 centos 紅帽公司免費版系統

大多數網際網路公司伺服器常用系統,可以部署的服務多樣,穩定性也比較高

14樓:匿名使用者

這問題問的……有點……

linux作為一款開源系統,發行版太多了……原來見過有個**一直在統計各種不同版本的linux的使用量,並根據使用量做出一個排名。因為發行版太多,所以只列出了使用量在前100的版本……

也就是說linux的版本絕對是遠遠大於100的……說實話用100這個數還是有點不靠譜

如果算上各種不同的硬體平臺以及個人開發版本我保守估計linux的版本在1000種以上絕對不誇張。

而且這種版本指的是完全不同的系列,而不是說一個系列內的版本號也就是說用這個「版本」的概念去看待windows系統那windows只有一個版本,至於說xp、vista、7之類都是系列內的版本號而已

至於常見的,ls已經列出不少了,我也不想再多說了~畢竟太多了,也不可能都列出來。

15樓:匿名使用者

基本上全部的都是免費使用安裝的,除了極個別的收費版本 比如 linspire , 包括 rhel在內的幾乎全部發行版都可以在官方**免費獲得安裝光碟的映象,

常見的有 ubuntu, fedora, debian ,redhatenterpriselinux ,suse opensuse, mindriva, gentoo, arch , slackware等等 這些主流發行版幾乎佔據了大多份額

linux根目錄下主要的目錄及目錄的功能各是什麼

1 根目錄 2 bin 存放啟動時所需要的普通程式 3 boot 存放核心及啟動所需要的檔案 4 dev 存放裝置相關的檔案 5 etc 存放系統的配置檔案 6 home 存放使用者檔案的主目錄,使用者資料 cd 可進入自己的主目錄 7 lib 存放啟動時所需要的庫檔案 8 mnt 存放臨時的對映檔...

linux根目錄下主要的目錄,及目錄的功能

1 根目錄 2 bin 存放啟動時所需要的普通程式 3 boot 存放核心及啟動所需要的檔案 4 dev 存放裝置相關的檔案 5 etc 存放系統的配置檔案 6 home 存放使用者檔案的主目錄,使用者資料 cd 可進入自己的主目錄 7 lib 存放啟動時所需要的庫檔案 8 mnt 存放臨時的對映檔...

linu使用者後在使用者目錄下沒有,linux 新建使用者後,在使用者目錄下沒有 bash profile檔案生成

1 使用root使用者檢視新建使用者的 家 目錄和shell型別 cat etc passwd。而且,只有shell是bash,才會需要.bash profile這個配置檔案,如果是csh或者tcsh的話,配置檔案是.cshrc或者.csh aliases。2 輸入命令 ls la etc skel...