首頁  >  文章  >  運維  >  linux下export指令怎麼用?

linux下export指令怎麼用?

青灯夜游
青灯夜游原創
2020-11-03 10:49:1010852瀏覽

linux  export指令可以用來設定或顯示環境變數;在shell中執行程式時,可使用export來新增,修改或刪除環境變量,供後續執行的程式使用,語法格式為「export [-fnp][變數名稱]=[變數設定值]」。

linux下export指令怎麼用?

相關推薦:《Linux影片教學

一、Windows 環境變數

  1、在Windows 系統下,許多軟體安裝都需要設定環境變量,例如安裝jdk ,如果不設定環境變量,在非軟體安裝的目錄下執行javac 指令,將會報告找不到文件,類似的錯誤。

  2、那麼什麼是環境變數?簡單說,就是指定一個目錄,運行軟體的時候,相關的程式將會依照該目錄尋找相關文件。設定變數對於一般人最實用的功能就是: 不用拷貝某些dll檔案到系統目錄中了,而path 這個系統變數就是系統搜尋dll檔案的一系列路徑

  3 、在Linux系統下,如果你下載並安裝應用程序,很有可能在鍵入它的名稱的時候出現“command  not found ” 的提示內容。如果每次都到安裝目錄資料夾內,找到可執行檔來進行操作就太繁瑣了。這牽涉到環境變數path的設定問題,而Path 的設定也是在Linux下自訂環境變數的一個組成部分。

二、Linux 環境變數(export指令)

環境變數啟動過程:

功能說明:

  設定或顯示環境變數。 (例如我們要用一個指令,但這個指令的執行檔不在目前目錄,這樣我們每次用的時候必須指定執行檔的目錄,麻煩,在程式碼中先執行export,這個相當於告訴程序,執行某某東西時,需要的檔案或什麼東東在這些目錄裡)

語法:export [-fnp][變數名稱]=[變數設定值]

補充說明:在shell中執行程式時,shell會提供一組環境變數。 export可新增,修改或刪除環境變量,以供後續執行的程式使用。 export的效力僅及於此登陸操作。

參  數:

#    -f  代表[變數名稱]中為函數名稱。 

 -n  刪除指定的變數。變數其實並未刪除,只是不會輸出到後續指令的執行環境。 

 -p  列出所有的shell賦予程式的環境變數。

  一個變數建立時,它不會自動地為在它之後所建立的shell程序所知。而命令export可以向後面的shell傳遞變數的值。當一個shell腳本呼叫並執行時,它不會自動得到原為腳本(呼叫者)裡定義的變數的存取權,除非這些變數已經被明確地設定為可用。 export指令可以用來傳遞一個或多個變數的值到任何後繼腳本。    ----《UNIX教學》

   一般來說,設定交叉編譯工具鏈的時候需要指定編譯工具的路徑,此時就需要設定環境變數。例如我的mips-linux-gcc編譯器在「/opt/au1200_rm /build_tools/bin」目錄下,build_tools就是我的編譯工具,則有以下三種方法來設定環境變數:

1、直接用export指令:

#export PATH=$PATH:/opt/au1200_rm/build_tools/bin

#檢視是否已經設好,可用指令export檢視:

2、修改profile檔:

#vi /etc/profile
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

#3. 修改.bashrc檔:

# vi /root/.bashrc
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

後兩種方法一般需要重新登出系統才能生效,最後可以透過echo指令測試一下:
# echo $PATH##


看看輸出裡面是不是已經有了 /my_new_path這個路徑了。

  「/bin」、「/sbin」、「/usr/bin」、「/usr/sbin」、「/usr/local/bin」等路徑已經在系統環境變數中了,如果可執行檔在這幾個標準位置,在終端命令列輸入該軟體可執行檔的檔名和參數(如果需要參數),回車即可。 

  如果不在標準位置,檔案名稱前面需要加上完整的路徑。不過每次都這樣跑就太麻煩了,一個「一勞永逸」的辦法是把這個路徑加入環境變數。 指令 「PATH=$PATH:路徑」可以把這個路徑加入環境變量,但是退出這個命令列就失效了。要永久生效,需要把這行加入到環境變數文件裡。有兩個檔案可選:“/etc/profile”和使用者主目錄下的“.bash_profile”,“/etc/profile”對系統裡所有使用者都有效,使用者主目錄下的“.bash_profile”只對這個用戶有效。   

“PATH=$PATH:路徑1:路徑2:...:路徑n”,意思是可執行檔的路徑包括原先設定的路徑,也包括從“路徑1”到“路徑n”的所有路徑。當使用者輸入一串字元並按回車後,shell會依序在這些路徑裡找對應的可執行檔並交給系統核心執行。那個「$PATH」表示原先設定的路徑 仍然有效,注意不要漏掉。某些軟體可能還有「PATH」以外類型的環境變數需要添加,但方法與此相同,也需要注意「$」。  

注意,與DOS/Window不同,UNIX類別系統環境變數中路徑名稱以冒號分隔,不是分號。另外,軟體越裝越多,環境變數越添越多,為了避免造成混亂,建議所有語句都加入檔案結尾,依照軟體的安裝順序加入。

格式如下():   

## 軟體名稱-版本編號

PATH=$ PATH:路徑1:路徑2:...:路徑n   

#其他環境變數=$其他環境變數:...   

#在「profile」和「.bash_profile」中,「#」是註解符號,寫在這裡除了視覺分隔外沒有任何效果。  

設定完畢,登出並重新登錄,設定就生效了。如果不註銷,直接在shell裡執行這些語句,也能生效,但是作用範圍只限於執行了這些語句的shell。  

相關的環境變數生效後,就不必老跑到軟體的可執行檔目錄裡去操作了。

更多程式相關知識,請造訪:###程式設計影片課程###! ! ###

以上是linux下export指令怎麼用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn