• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-167  評論-8  文章-0  trackbacks-0
            我們在Linux下安裝系統(tǒng)軟件的時候,經常遇到一些系統(tǒng)環(huán)境變量配置的問題。什么是環(huán)境變量?如何定制環(huán)境變量?我將在下面做一些介紹。

            一、什么是環(huán)境變量?
            Linux是一個多用戶的操作系統(tǒng)。多用戶意味著每個用戶登錄系統(tǒng)后,都有自己專用的運行環(huán)境。而這個環(huán)境是由一組變量所定義,這組變量被稱為環(huán)境變量。用戶可以對自己的環(huán)境變量進行修改以達到對環(huán)境的要求。

            二、定制環(huán)境變量 
            環(huán)境變量是和Shell緊密相關的,它是通過Shell命令來設置的。環(huán)境變量又可以被所有當前用戶所運行的程序所使用。對于bash來說,可以通過變量名來訪問相應的環(huán)境變量。
            下面通過幾個實例來說明

            1.顯示環(huán)境變量HOME 
            $ echo $HOME
            /home/admin

            2.設置一個新的環(huán)境變量NAME
            $ export NAME="RaidCheng"
            $ echo $NAME
            RaidCheng

            3.使用env命令顯示所有的環(huán)境變量 
            $ env
            HOSTNAME=test
            TERM=vt100
            SHELL=/bin/bash
            HISTSIZE=1000
            SSH_CLIENT=202.xxx.xxx.xxx 53694 22
            CATALINA_BASE=/usr/local/jakarta-tomcat
            SSH_TTY=/dev/pts/0
            ANT_HOME=/usr/local/ant
            JAVA_OPTS=-server
            USER=admin
            ...

            4.使用set命令顯示所有本地定義的Shell變量 
            $ set
            BASH=/bin/bash
            BASH_VERSINFO=([0]="2" [1]="05b" [2]="0" [3]="1" [4]="release" [5]="i386-redhat-linux-gnu")
            BASH_VERSION='2.05b.0(1)-release'
            CATALINA_BASE=/usr/local/jakarta-tomcat
            CATALINA_HOME=/usr/local/jakarta-tomcat
            ...

            5.使用unset命令來清除環(huán)境變量 
            $ export NAME="RaidCheng"
            $ echo $NAME
            RaidCheng
            $ unset NAME
            $ echo $NAME

            6.使用readonly命令設置只讀變量 
            $ export NAME="RaidCheng"
            $ readonly NAME
            $ unset NAME
            -bash: unset: NAME: cannot unset: readonly variable
            $ NAME="New" #會發(fā)現此也變量不能被修改
            -bash: TEST: readonly variable

            三、常見的環(huán)境變量 
            PATH      決定了shell將到哪些目錄中尋找命令或程序
            HOME      當前用戶主目錄
            HISTSIZE    歷史記錄數
            LOGNAME     當前用戶的登錄名 
            HOSTNAME    指主機的名稱
            SHELL      前用戶Shell類型 
            LANGUGE     語言相關的環(huán)境變量,多語言可以修改此環(huán)境變量
            MAIL      當前用戶的郵件存放目錄 
            PS1       基本提示符,對于root用戶是#,對于普通用戶是$
            PS2       附屬提示符,默認是“>”

            四、通過C程序來訪問和設置環(huán)境變量 
            對于C程序的用戶來說,可以使用下列三個函數來設置或訪問一個環(huán)境變量。 

            getenv()訪問一個環(huán)境變量。輸入參數是需要訪問的變量名字,返回值是一個字符串。如果所訪問的環(huán)境變量不存在,則會返回NULL

            setenv()在程序里面設置某個環(huán)境變量的函數

            unsetenv()清除某個特定的環(huán)境變量的函數

            另外,還有一個指針變量environ,它指向的是包含所有的環(huán)境變量的一個列表。下面的程序可以打印出當前運行環(huán)境里面的所有環(huán)境變量:

            #include 
            extern char**environ;
            int main ()
            {
            char**var;
            for (var =environ;*var !=NULL;++var)
            printf ("%s \n ",*var);
            return 0;
            }

            五、環(huán)境變量文件
            通過修改一些相關的環(huán)境定義文件來修改環(huán)境變量,比如對于RedHat,與環(huán)境相關的文件有/etc/profile和~/.bash_profile等。修改完畢后重新登錄一次或運行命令source xxx就生效了。
            posted on 2009-12-07 17:42 老馬驛站 閱讀(253) 評論(0)  編輯 收藏 引用 所屬分類: linux
            久久最新精品国产| 无码伊人66久久大杳蕉网站谷歌| 国产精品久久国产精品99盘| 久久国产乱子伦免费精品| 久久99国产精品一区二区| 精品无码久久久久久久动漫| 四虎国产精品成人免费久久| 97久久精品无码一区二区天美| 91精品日韩人妻无码久久不卡| 久久人人爽人人爽人人片AV东京热| 久久这里只有精品18| 久久精品国产一区二区三区不卡| 国产精品久久久久久五月尺| 亚洲综合精品香蕉久久网97| 亚洲精品乱码久久久久久蜜桃图片 | 久久精品无码av| 亚洲国产美女精品久久久久∴| 久久久久国产成人精品亚洲午夜| 亚洲欧美伊人久久综合一区二区| 狠狠精品久久久无码中文字幕 | 久久这里只精品国产99热| 噜噜噜色噜噜噜久久| 狠狠色综合久久久久尤物| 久久久久亚洲AV无码网站| yy6080久久| 亚洲欧美日韩精品久久亚洲区 | 久久婷婷人人澡人人爽人人爱| 国产精品女同一区二区久久| 久久99国产综合精品女同| 精品国产99久久久久久麻豆| 久久受www免费人成_看片中文| 国产福利电影一区二区三区久久久久成人精品综合 | 亚洲av成人无码久久精品 | 久久国产精品无码网站| 国产亚洲欧美精品久久久| 蜜臀久久99精品久久久久久小说 | 久久伊人五月天论坛| 精品一久久香蕉国产线看播放| 精品人妻伦九区久久AAA片69| 91精品观看91久久久久久 | 久久国产精品99久久久久久老狼|