linux日積月累之環境變數設定

2021-04-09 10:34:00 字數 1320 閱讀 4684

在一般情況下,linux檔案系統中bin或sbin目錄中的檔案都是可執行的。有時我們為了方便不輸入路徑就能呼叫指令或工具,這時要就要設定使用者的環境變數path。

看下面的一例:

[root@localhost ~]# ls

adduml.sh lsfile.sh mkuml-2004.07.17 mkuml-2004.07.17-ananas.tar.bz2 mydir openqreadme.txt sun.txt tmp upgrade.log

[root@localhost ~]# /bin/ls

adduml.sh lsfile.sh mkuml-2004.07.17 mkuml-2004.07.17-ananas.tar.bz2 mydir openqreadme.txt sun.txt tmp upgrade.log

上面的例子,第乙個指令就是直接執行了ls命令來顯示當前目錄下的檔案和子目錄;第二個條/bin/ls 指令是用絕對路徑的ls來執行的;這兩種方式執行的結果看來是一樣的。

再看下面的一例:

[leon@leon stl_ch6]$ ll

-rw-rw-r-- 1 leon leon   956 10-18 22:04 ex06-09.cpp

-rw-rw-r-- 1 leon leon   956 10-18 22:03 ex06-09.cpp~

[leon@leon stl_ch6]$g++ -o run ex06-09.cpp

上面的例子,當用編譯指令編譯生成可持行檔案時(本例中的"run"),如果不設定環境變數path時,直接在運令行中使用可執行檔案linux會提示沒有這個shell指令或者沒有這個檔案:

[leon@leon stl_ch6]run

bash: run: command not found

我們可以用export path來設定環境變數。比如把下面一行加入到使用者家目錄下的.bashrc 或.profile檔案中;

export path=.:$path

($path是乙個變數巨集用以替換賦值給它的shell路徑,如path=/usr/local/jdk/bin)

解釋:您可以找出linux檔案系統中所有bin或sbin目錄的的絕對路徑,然後把它們用:號分割,比如上面所設定的。第乙個.表示使用者當前所處的目錄;

新增好後,我們再執行一下source,也就是:

#source .bashrc

或 #source .profile

如果發現指令只有root許可權才執行,這時您要用到su; 如果您用的是普通使用者,可能無權檢視一些檔案的目錄的內容,您也需要用到su來切換身份;請參考:《linux 系統中的超級許可權的控制》 

Linux之環境變數

按環境變數的生存週期來劃分可分為兩類 1 永久生效的環境變數 環境變數是定義在配置檔案中的,修改時需要修改配置檔案。1 在 etc profile檔案中使用export定義環境變數,對所有使用者都生效 2 在某使用者的家目錄的.bash profile檔案中使用export定義環境變數,對該使用者生...

Ubuntu Linux 環境變數PATH設定

ubuntu linux系統環境變數配置檔案 etc profile 在登入時,作業系統定製使用者環境時使用的第乙個檔案 此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行。etc environment 在登入時作業系統使用的第二個檔案,系統在讀取你自己的profile前,設...

Ubuntu Linux 環境變數PATH設定

ubuntu linux系統環境變數配置檔案 etc profile 在登入時,作業系統定製使用者環境時使用的第乙個檔案 此檔案為系統的每個使用者設定環境資訊,當使用者第一次登入時,該檔案被執行。etc environment 在登入時作業系統使用的第二個檔案,系統在讀取你自己的profile前,設...