Ubuntu環境變量

Ubuntu 環境變量


環境變量配置文件

在Ubuntu中有以下幾個文件能夠設置環境變量
一、 /etc/profile:在登陸時,操做系統定製用戶環境時使用的第一個文件,此文件爲系統的每一個用戶設置環境信息,當用戶第一次登陸時,該文件被執行。
二、 /etc/environment:在登陸時操做系統使用的第二個文件,系統在讀取你本身的profile前,設置環境文件的環境變量。
三、 ~/.bash_profile:在登陸時用到的第三個文件是.profile文件,每一個用戶均可使用該文件輸入專用於本身使用的shell信息,當用戶登陸時,該 文件僅僅執行一次!默認狀況下,他設置一些環境變遊戲量,執行用戶的.bashrc文件。/etc/bashrc:爲每個運行bash shell的用戶執行此文件.當bash shell被打開時,該文件被讀取.
四、 ~/.bashrc:該文件包含專用於你的bash shell的bash信息,當登陸時以及每次打開新的shell時,該該文件被讀取。 幾個環境變量的優先級 1>2>3 設置永久環境變量 1.環境變量配置中,要先刪除.bash_profile中的三行關於.bashrc的定義,而後把環境變量配置在.bashrc中 2.選擇要使用的java環境:update-alternatives –config java 3.要使得剛修改的環境變量生效:source .bashrc 4.查看環境變量:env 能夠放到/etc/bash/bashrc,這樣就是系統級的 環境變量命令 一、引言 在linux系統下,若是你下載並安裝了應用程序,頗有可能在鍵入它的名稱時出現「command not found」的提示內容。若是每次都到安裝目標文件夾內,找到可執行文件來進行操做就太繁瑣了。這涉及到環境變量PATH的設置問題,而PATH的設置也 是在linux下定製環境變量的一個組成部分。本文基於RedHat 9.0,詳細講解了環境變量定製的問題。 二、變量簡介 Linux是一個多用戶的操做系統。每一個用戶登陸系統後,都會有一個專用的運行環境。一般每一個用戶默認的環境都是相同的,這個默認環境實際上就是一組環境變量的定義。用戶能夠對本身的運行環境進行定製,其方法就是修改相應的系統環境變量。 三、定製環境變量 環境變量是和Shell緊密相關的,用戶登陸系統後就啓動了一個Shell。對於Linux來講通常是bash,但也能夠從新設定或切換到其它的 Shell。根據發行版本的狀況,bash有兩個基本的系統級配置文件:/etc/bashrc和/etc/profile。這些配置文件包含兩組不一樣的 變量:shell變量和環境變量。前者只是在特定的shell中固定(如bash),後者在不一樣shell中固定。很明顯,shell變量是局部的,而環 境變量是全局的。環境變量是經過Shell命令來設置的,設置好的環境變量又能夠被全部當前用戶所運行的程序所使用。對於bash這個Shell程序來 說,能夠經過變量名來訪問相應的環境變量,經過export來設置環境變量。下面經過幾個實例來講明。 3.1 使用命令echo顯示環境變量 #本例使用echo顯示常見的變量HOME $ echo $HOME /home/xiaosu 3.2 設置一個新的環境變量 $ export HELLO=」Hello!」 $ echo $HELLO Hello! 3.3 使用env命令顯示全部的環境變量 $ env SSH_AGENT_PID=1875 HOSTNAME=xiaosu-latop SHELL=/bin/bash TERM=xterm HISTSIZE=1000 …… 3.4 使用set命令顯示全部本地定義的Shell變量 $ set BASH=/bin/bash …… 3.5 使用unset命令來清除環境變量 $ export TEST=」test」 #增長一個環境變量TEST $ env | grep TEST #此命令有輸出,證實環境變量TEST已經存在了 TEST=test $ unset $TEST #刪除環境變量TEST $ env | grep TEST #此命令無輸出,證實環境變量TEST已經存在了 3.6 使用readonly命令設置只讀變量 若是使用了readonly命令的話,變量就不能夠被修改或清除了。示例以下: $ export TEST=」Test…」 #增長一個環境變量TEST $ readonly TEST #將環境變量TEST設爲只讀 $ unset TEST #會發現此變量不能被刪除 -bash: unset: TEST: cannot unset: readonly variable $ TEST=」New」 #會發現此變量不能被修改 -bash: TEST: readonly variable 3.7 用C程序來訪問和設置環境變量 對於C程序的用戶來講,可使用下列三個函數來設置或訪問一個環境變量。 getenv()訪問一個環境變量。輸入參數是須要訪問的變量名字,返回值是一個字符串。若是所訪問的環境變量不存在,則會返回NULL。 setenv()在程序裏面設置某個環境變量的函數。 unsetenv()清除某個特定的環境變量的函數。 另外,還有一個指針變量environ,它指向的是包含全部的環境變量的一個列表。下面的程序能夠打印出當前運行環境裏面的全部環境變量: #include <stdio.h> extern char**environ; int main () { char**var; for (var =environ;*var !=NULL;++var) printf (」%s /n 「,*var); return 0; } 3.8 經過修改環境變量定義文件來修改環境變量。 須要注意的是,通常狀況下,這僅僅對於普通用戶適用,避免修改根用戶的環境定義文件,由於那樣可能會形成潛在的危險。 $cd #到用戶根目錄下 $ls -a #查看全部文件,包含隱藏的文件 $vi .bash_profile #修改環境變量定義文件 而後編輯你的PATH聲明,其格式爲: PATH=$PATH:<PATH 1>:<PATH 2>:<PATH 3>:——:<PATH N> 你能夠本身加上指定的路徑,中間用冒號隔開。環境變量更改後,在用戶下次登錄時生效,若是想馬上生效,則可執行下面的語句:$source .bash_profile 須要注意的是,最好不要把當前路徑」./」放到PATH裏,這樣可能會受到意想不到的攻擊。完成後,能夠經過$ echo $PATH查看當前的搜索路徑。這樣定製後,就能夠避免頻繁的啓動位於shell搜索的路徑以外的程序了。
相關文章
相關標籤/搜索