linux設置全局變量


Linux中環境變量包括系統級和用戶級,系統級的環境變量是每個登錄到系統的用戶都要讀取的系統變量,而用戶級的環境變量則是該用戶使用系統時加載的環境變量。 所以管理環境變量的文件也分為系統級和用戶級的,下面貼一個網上找到的講的比較明白的文件介紹(略作修改)[1]:
1.系統級:

(1)/etc/profile:該文件是用戶登錄時,操作系統定制用戶環境時使用的第一個文件,應用於登錄到系統的每一個用戶。該文件一般是調用/etc/bash.bashrc文件。 /etc/bash.bashrc:系統級的bashrc文件。

  (2)/etc/profile.d/

          在/etc/profile.d/目錄下的每個腳本,都會被/etc/profile執行,所以對於用戶自定義的全局變量,一般是在/etc/profile.d目錄下新建一個腳本文件,把自己想要定義的變量或初始化設置寫在這個腳本中,那么系統啟動之后,就會自動執行,並且對所有用戶都是可見的。例如:

     redhat中每個用戶都要指定各自的環境變量,這樣會比較麻煩,那么如何配置一個環境變量,所有的用戶都可以使用呢?

下面以vcs的安裝為例

vi  /etc/profile.d/vcs.sh

在新的java.sh中輸入以下內容:

 

#set java environment

VCS_HOME=/home/eda/synopsys/vcs-2014.03
PATH=$VCS_HOME/bin:$PATH
export VCS_HOME PATH

保存退出,然后給vcs.sh分配權限:chmod 755 /etc/profile.d/vcs.sh

       

           Linux 環境下/etc/profile和/etc/profile.d 的區別

     區別:
1. 兩個文件都是設置環境變量文件的,/etc/profile是永久性的環境變量,是全局變量,/etc/profile.d/設置所有     用戶生效
2. /etc/profile.d/比/etc/profile好維護,不想要什么變量直接刪除/etc/profile.d/下對應的shell腳本即可,不用      像/etc/profile需要改動此文件

 

(2)/etc/environment:在登錄時操作系統使用的第二個文件,系統在讀取你自己的profile前,設置環境文件的環境變量。


2.用戶級(這些文件處於家目錄下):

(1)~/.profile:每個用戶都可使用該文件輸入專用於自己使用的shell信息,當用戶登錄時,該文件僅僅執行一次!默認情況下,他設置一些環境變量,執行用戶的.bashrc文件。這里是推薦放置個人設置的地方

(2)~/.bashrc:該文件包含專用於你的bash shell的bash信息,當登錄時以及每次打開新的shell時,該該文件被讀取。不推薦放到這兒,因為每開一個shell,這個文件會讀取一次,效率肯定有影響。 ~/.bash_profile or ~./bash_login

用法:有些程序我們希望在任何路徑下使用,而每次都要輸入絕對路徑很麻煩,所以可以在環境變量中添加一個目錄,然后把要運行的程序放到這個目錄中。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM