歡迎加入QQ討論群258996829
麥子學(xué)院 頭像
蘋果6袋
6
麥子學(xué)院

Linux環(huán)境變量簡(jiǎn)述

發(fā)布時(shí)間:2017-08-27 22:50  回復(fù):0  查看:2478   最后回復(fù):2017-08-27 22:50  
本文和大家分享的主要是linux 環(huán)境變量相關(guān)內(nèi)容,一起來(lái)看看吧,希望對(duì)大家 學(xué)習(xí)linux有所幫助。
  通俗的講,環(huán)境變量就是告訴電腦 ( 實(shí)際是操作系統(tǒng) ) 幾個(gè)目錄。這幾個(gè)目錄下存儲(chǔ)幾個(gè)執(zhí)行文件,如前面顯示的 /usr/bin 目錄,大部分的系統(tǒng)命令都在這個(gè)目錄下。
  當(dāng)我們輸入命令mkdir 時(shí),系統(tǒng)就會(huì)在環(huán)境變量所代表的幾個(gè)目錄從前到后去查找,哪個(gè)里面有 mkdir 文件,然后去執(zhí)行 mkdir 命令。
  系統(tǒng)中環(huán)境變量的名字是PATH ,其內(nèi)容可通過(guò)下面的命令顯示  ( 根據(jù)操作系統(tǒng)不同和配置不同,略有差別,但格式是統(tǒng)一的, : 分割的一堆路徑 )
  $ echo $PATH
  /usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
  所以如果我們想讓自己的命令能被系統(tǒng)找到,就需要把命令所在的目錄加到環(huán)境變量里面,怎么操作呢?
  加到環(huán)境變量的路徑必須是全路徑,全路徑指以/ 開頭或以 ~ 開頭的路徑。
  注意第一個(gè) PATH 不含 $,  第二個(gè) PATH $ 符號(hào)
  $ export PATH=$PATH:/home/ct
  $ echo $PATH
  /usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ct
  所以在以后安裝了新的軟件,或者寫了新的腳本后,都把軟件的可執(zhí)行程序和可執(zhí)行的腳本所在的目錄,加到環(huán)境變量里面就可以了。
  但是,在命令行中執(zhí)行export ,對(duì)環(huán)境變量所做的修改,只對(duì)當(dāng)前終端有效,退出后就無(wú)效了。為了使得這一操作長(zhǎng)期有效,我們需要把這句話寫入一個(gè)文件中,一個(gè)登陸服務(wù)器就會(huì)被自動(dòng)讀取的文件中。
  對(duì)于普通用戶,在遠(yuǎn)程登錄終端時(shí),家目錄下的~/.bash_profile ( 不是 ~/.bashrc) 會(huì)自動(dòng)被讀取,所以我們需要把 export 語(yǔ)句加入到這個(gè)文件中。
  這是我的 ~/.bash_profile 中的內(nèi)容,主要是最后一行??梢赃B續(xù)的加入多個(gè)路徑。
  if [ -f ~/.bashrc ]; then
  . ~/.bashrc
  fi
  if [ -f ~/.bash_aliases ]; then
  . ~/.bash_aliases
  fi
  export PATH=$PATH:/home/ct:/home/bin:/home/soft/bowtie2/bin
  前面提到,系統(tǒng)查找命令的順序是從環(huán)境變量的第一個(gè)目錄到最后一個(gè)目錄,在第一次碰到查詢的命令后,就調(diào)用執(zhí)行。假如系統(tǒng)存在一個(gè)python 命令,我們自己又安裝了一個(gè) python ( 假如在 /home/ct/anaconda/bin 目錄下 ) ,如果我們想執(zhí)行自己的 python 程序,就需要把 /home/ct/anaconda/bin 寫在 $PATH 前面,如下
  注意 $PATH 的順序
  $ export PATH=/home/ct/anaconda/bin:$PATH
至此,我們可以熟練使用環(huán)境變量來(lái)簡(jiǎn)化命令的輸入過(guò)程了,因?yàn)槿绻麤](méi)有環(huán)境變量,我們就得需要運(yùn)行/home/ct/anaconda/bin/python 來(lái)運(yùn)行 python 命令了
來(lái)源:Linux 公社
您還未登錄,請(qǐng)先登錄

熱門帖子

最新帖子

?