linux命令(11)環境變量:查看和添加環境變量


linux 環境變量系統:

系統級別:/etc/profile、/etc/bashrc/ 、/etc/environment

用戶級別:~/.profile、~/.bashrc、 ~/.bash_profile 或 ~/.bash_login

https://www.cnblogs.com/lovychen/p/10911699.html

 

LIBRARY_PATH和LD_LIBRARY_PATH的區別:

https://www.cnblogs.com/lovychen/p/10911600.html

簡介:

  PATH和LD_LIBRARY_PATH本質都是變量,所謂變量的意思就是由別人賦值產生的,直覺往往會讓我們添加和減少這個變量本身的某些路徑,實際上這是不正確的。正確的做法是我們要去修改賦予這個變量數值的那些配置文件,加一條路徑或者減一條。說到底變量只關乎顯示,不關乎其用於顯示的內容。

  首先你可以在命令行輸入:echo  $PATH  看看你能看到什么,那是一些 bash 路徑,

       如下的意思就是往 PATH 里面新增一個/opt/bin的路徑,如果不加:$PATH的話,就表示直接把PATH賦值為/opt/bin啦,這樣你其他的老路徑就丟失了;

  export PATH="/opt/bin:$PATH"

  意思是:你現在配置的path在你需要的/opt/bin的目錄下,還要再加上原來系統自帶的path環境變量,這樣寫的目的是為了系統能正常啟動,而且終端命令能夠正常運行,如果丟掉就會命令無效等等;

如何插入環境變量:

  $PATH:決定了shell將到哪些目錄中去尋找命令或者程序,PATH值是一系列的目錄,當你要運行一個程序時,Linux在這些目錄下進行搜尋編譯鏈接。

  編輯PATH 聲明,其格式為:

  PATH=$PATH:<PATH1>:<PATH2>:<PATH3>:------:<PATHN>

  你可以自己加上指定的路徑,中間用冒號隔開。環境變量更改后,在用戶下次登陸時生效,如果想立刻生效,則可執行下面的語句:$source .bash_profile

 

 添加環境變量:

注意:

如果export 臨時添加環境變量,在腳本中執行的時候,只在該腳本內環境變量有效;

如果是想在該登錄賬戶內有效,則需要,用source 執行該腳本;

1、臨時變量的添加:退出登錄后失效;

export PATH=$PATH:/XXX  //新的環境變量 加在原有的PATH 后面;
或者
export PATH=/XXX:$PATH  //新的環境變量 加在原有的PATH 前面;
如下所示:注,不能缺失 冒號 :

www@ubuntu:~$ echo $TEST_PATH


www@ubuntu:~$ export TEST_PATH=$TEST_PATH:/home/www/1245
www@ubuntu:~$ echo $TEST_PATH
:/home/www/1245
www@ubuntu:~$ export TEST_PATH=$TEST_PATH:/home/www/124
www@ubuntu:~$ echo $TEST_PATH
:/home/www/1245:/home/www/124
www@ubuntu:~$ export TEST_PATH=/home/www/123:$TEST_PATH
www@ubuntu:~$ echo $TEST_PATH
/home/www/123::/home/www/1245:/home/www/124
www@ubuntu:~$ export TEST_PATH=/home/www/123TEST_PATH //忘加 $,直接等於
www@ubuntu:~$ echo $TEST_PATH
/home/www/123TEST_PATH


2、PATH: 可執行程序的查找路徑

查看當前環境變量:   echo $PATH

設置如下:

方法一 export PATH=$PATH:/XXX 但是登出后就失效

  上述方法的PATH 在終端關閉后就會消失。所以還是建議通過編輯/etc/profile來改PATH,也可以改自家目錄下的.bashrc(即:~/.bashrc)。

 

方法二:修改 ~/.bashrc~/.bash_profile 或系統級別的 /etc/profile

    • 1. 在其中添加例如export PATH=/opt/ActivePython-2.7/bin:$PATH
    • 2. source .bashrc (Source命令也稱為“點命令”,也就是一個點符號(.)。
    • source命令通常用於重新執行剛修改的初始化文件,使之立即生效,而不必注銷並重新登錄)

 

3、LD_LIBRARY_PATH: 動態庫的查找路徑

查看當前環境變量:   echo $LD_LIBRARY_PATH

設置如下:

方法一: export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/XXX 但是登出后就失效

方法二: 修改 ~/.bashrc~/.bash_profile 或系統級別的 /etc/profile

    • 1. 在其中添加例如export PATH=/opt/ActiveP/lib:$LD_LIBRARY_PATH
    • 2. source .bashrc (Source命令也稱為“點命令”,也就是一個點符號(.)。
    • source命令通常用於重新執行剛修改的初始化文件,使之立即生效,而不必注銷並重新登錄)

方法三:這個沒有修改 LD_LIBRARY_PATH 但是效果是一樣的實現動態庫的查找;設置稍微麻煩,好處是比較不受用戶的限制。

    • 1. /etc/ld.so.conf 下面加一行 /usr/local/mysql/lib
    • 2. 保存過后 ldconfig 一下

 

ldconfig 命令的用途:

1、在默認搜尋目錄(/lib和/usr/lib)以及動態庫配置文件/etc/ld.so.conf內所列的目錄下,搜索出可共享的動態鏈接庫(格式lib*.so*),進而創建出動態裝入程序(ld.so)所需的連接和緩存文件。緩存文件默認為 /etc/ld.so.cache,此文件保存已排好序的動態鏈接庫名字列表

2、為了讓動態鏈接庫為系統所共享,需運行動態鏈接庫的管理命令ldconfig,此執行程序存放在/sbin目錄下。ldconfig通常在系統啟動時運行,而當用戶安裝了一個新的動態鏈接庫,修改了ld.so.conf時,就需要手工運行這個命令。

3、linux下的共享庫機制采用了類似於高速緩存的機制,將庫信息保存在/etc/ld.so.cache里邊。程序連接的時候首先從這個文件里邊查找,然后再到ld.so.conf的路徑里邊去詳細找

 

ldd 命令的用途:

作用:用來查看程序運行所需的共享庫,常用來解決程序因缺少某個庫文件而不能運行的一些問題。

語法:ldd(選項)(參數)

選項:

    • --version:打印指令版本號;
    •  -v:詳細信息模式,打印所有相關信息; 
    • -u:打印未使用的直接依賴; 
    • -d:執行重定位和報告任何丟失的對象;
    •  -r:執行數據對象和函數的重定位,並且報告任何丟失的對象和函數; 
    • --help:顯示幫助信息。

參數:

文件:指定可執行程序或者文庫。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM