1. 程式人生 > >Linux中環境變量/etc/profile ~/.bashrc 和 ~/.bash_profile 和 /etc/bashrc 的區別

Linux中環境變量/etc/profile ~/.bashrc 和 ~/.bash_profile 和 /etc/bashrc 的區別

linux中環境變量/etc/profile ~/.bashrc 和 ~/.bash_profile 和 /etc/bashrc 的區別

技術分享


這個一定要理解登錄式shell和非登錄式shell的區別,前者是完全切換用戶,後者是不完全,就算切換過來了,你pwd時家目錄還是之前的家目錄,所以

登錄式順序為:/etc/bashrc---/etc/profile.d/*.sh----~/.bash_profile---~/.bashrc_profile----~/.bashrc-----/etc/bashrc

非登錄式:~/.bashrc-----/etc/bashrc-/etc/profile.d/*.sh

  1. /etc/profile:
    該文件登錄操作系統時,為每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行。也就是說這個文件對當前每個shell都有效,如果此時su 其他用戶沒有- ,則切過去的用戶無法使用你alias的別名,應為是他是登陸時就產生的,用於獲取系統的環境信息。

  2. /etc/bashrc:為每一個運行bash shell的用戶執行此文件,當bash shell被打開時,該文件被讀取。也就是說,當用戶shell執行了bash時,就運行這個文件,無論你su切換其他用戶加-還是不加-alias都有效。

3、`/.bashrc該文件存儲的是專屬於個人bash shell的信息,當登錄時以及每次打開一個新的shell時,執行這個文件。在這個文件裏可以自定義用戶專屬的個人信息。

  • 2


本文出自 “大鳥地帶-點滴積累” 博客,請務必保留此出處http://09112012.blog.51cto.com/4813132/1926862

Linux中環境變量/etc/profile ~/.bashrc 和 ~/.bash_profile 和 /etc/bashrc 的區別