Linux中 bashrc和profile的區別

2021-05-25 01:32:11 字數 1061 閱讀 9229

之前安裝qt-4.7.2,由於習慣了在命令列下編譯原始檔,我在網上搜了一下關於qt環境變數的配置方法,配置很簡單,在/etc/profile檔案裡新增下面幾行語句:

export qtdir=/opt/qtsdk-2010.05/qt    這個路徑根據自己安裝的位置進行配置

export ld_library_path=$ld_library_path:$qtdir/lib

export path=$path:$qtdir/bin

關掉shell,重新開啟,輸入# qmake -v,提示 bash: qmake: command not found。記得在以前配置arm-linux-gcc-4.3.2的環境變數的時候,我按照使用者手冊來做,是將環境變數新增到 ~/.bashrc 中的

,關掉shell並重新開啟後就可以正常使用了。於是,我又將qt的環境變數配置到 ~/.bashrc 中,關掉shell,重新開啟,輸入 # qmake -v,超級終端輸出了qmake的版本資訊,說明環境變數設定成功了。那麼這兩個檔案有什麼區別呢?本著鑽研精神,我在網上查了一下,呵,還真不少!

登入linux的console操作環境後,會出現乙個提示符號,在這個提示符號之後可以輸入命令,linux根據輸入的命令會做回應,這一連串的動作是由乙個所謂的 shell 來做處理。

shell是乙個程式,最常用的就是bash,這也是登入系統缺省會使用的shell。

profile與bashrc都是shell的啟動設定檔,類似於microsoft dos/windows下的autoexec.bat檔案。

但二者還是有一些區別的:

1、.bashrc

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

2、profile

此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行。並從 /etc/profile.d 目錄的配置檔案中蒐集shell的設定。

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

Linux下profile和bashrc的區別

在做環境變數配置時涉及到了這兩個檔案,故在網上找了一下它們之間的區別,記錄下來方便以後查閱 bashrc與profile的區別 從上面的英文描述可以知道,bashrc和profile的差異在於 1.bashrc是在系統啟動後就會自動執行。2.profile是在使用者登入後才會執行。3.進行設定後,可...

Linux下profile和bashrc四種的區別

etc profile etc bashrc bash profile bashrc很容易混淆,他們之間有什麼區別?它們的作用到底是什麼?1 etc profile 用來設定系統環境引數,比如 path.這裡面的環境變數是對系統內所有使用者生效的。2 etc bashrc 這個檔案設定系統bash ...

Linux下profile和bashrc四種的區別

etc profile etc bashrc bash profile bashrc很容易混淆,他們之間有什麼區別?它們的作用到底是什麼?etc profile 用來設定系統環境引數,比如 path.這裡面的環境變數是對系統內所有使用者生效的。etc bashrc 這個檔案設定系統bash shel...