Linux 中環境變數設置
本文主要整理自以下博文:
.bash_profile 和 .bashrc 區別
相關文件介紹
/etc/profile: 此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行。並從 /etc/profile.d 目錄的配置文件中搜集shell的設置。
/etc/bashrc: 為每一個運行 bash shell 的用戶執行此文件。當 bash shell 被打開時,該文件被讀取。
~/.bash_profile: 每個用戶都可使用該文件輸入專用於自己使用的 shell 信息,當用戶登錄時,該文件僅僅執行一次!默認情況下,其他設置的一些環境變數,執行用戶的 .bashrc 文件。
~/.bashrc: 該文件包含專用於登陸用戶的 bash shell 的 bash 信息,當登錄時以及每次打開新的 shell 時,該該文件被讀取。
~/.bash_logout: 當每次退出 bash shell 時,執行該文件。
另外,/etc/profile中設定的變數(全局)的可以作用於任何用戶,而~/.bashrc等中設定的變數(局部)只能繼承/etc/profile中的變數,他們是”父子”關係。
~/.bash_profile 是互動式、login 方式進入 bash 運行的。
~/.bashrc 是互動式 non-login 方式進入 bash 運行的。
通常二者設置大致相同,前者會調用後者。
啟動過程
在登錄Linux時要執行文件的過程如下:
在剛登錄 Linux 時,首先啟動 /etc/profile 文件,然後再啟動用戶目錄下的 ~/.bash_profile、 ~/.bash_login 或 ~/.profile 文件中的其中一個(根據不同的 Linux 操作系統的不同,命名不一樣),
執行的順序為:~/.bash_profile、 ~/.bash_login、 ~/.profile。
如果 ~/.bash_profile 文件存在的話,一般還會執行 ~/.bashrc文件。
因為在 ~/.bash_profile 文件中一般會有下面的代碼:
# Get the aliases and functions
if [ -f ~/.bashrc ] ; then
. ./bashrc
fi
~/.bashrc 中,一般還會有以下代碼:
# Source global definitions
if [ -f /etc/bashrc ] ; then
. /bashrc
fi
所以,~/.bashrc 會調用 /etc/bashrc 文件。最後,在退出 shell 時,還會執行 ~/.bash_logout 文件。
執行順序為:/etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout
環境變數設置
PATH: 可執行程序的查找路徑
查看當前環境變數:
echo $PATH
設置:
方法一:export PATH=PATH:/XXX 但是登出後就失效
方法二:修改~/.bashrc或~/.bash_profile或系統級別的/etc/profile
1. 在其中添加例如export PATH=/opt/ActivePython-2.7/bin:$PATH
2. source .bashrc (Source命令也稱為”點命令”,也就是一個點符號(.)。source命令通常用於重新執行剛修改的初始化文件,使之立即生效,而不必註銷並重新登錄)
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
方法三:這個沒有修改 LD_LIBRARY_PATH 但是效果是一樣的實現動態庫的查找,
1. /etc/ld.so.conf 下面加一行/usr/local/mysql/lib
2. 保存過後 ldconfig 一下(ldconfig 命令的用途,主要是在默認搜尋目錄(/lib 和 /usr/lib)以及動態庫配置文件 /etc/ld.so.conf 內所列的目錄下,搜索出可共享的動態鏈接庫(格式如前介紹,lib*.so*),進而創建出動態裝入程序(ld.so)所需的連接和緩存文件.緩存文件默認為 /etc/ld.so.cache,此文件保存已排好序的動態鏈接庫名字列表。)
方法三設置稍微麻煩,好處是比較不受用戶的限制。
刪除環境變數
unset PATH
unset LD_LIBRARY_PATH
1、Linux是一個多用戶的操作系統。每個用戶登錄系統後,都會有一個專用的運行環境。通常每個用戶默認的環境都是相同的,這個默認環境實際上就是一組環境變數的定義。用戶可以對自己的運行環境進行定製,其方法就是修改相應的系統環境變數。
2、常在/etc/profile文件中修改環境變數,在這裡修改的內容是對所有用戶起作用的。使用修改.bashrc文件進行環境變數的編輯,只對當前用戶有用。使用修改 /etc/profile 文件進行環境變數的編輯,是對所有用戶有用。
這次要講的是對/etc/profile環境變數的添加:
注釋:
1 : vi 文本編輯命令
1.1 . :wq 保存
1.2 . :q! 取消保存
2 : export 聲明變數
示例 :
export name = zhangsan ;
export say = hello ;
echo $say my name is $name 輸出 hello my name is zhangsan ;
3 : 變數相連
${變數名1}${變數名2}
1: 編輯命令
在任意目錄輸入命令:vi /etc/profile 回車
2: 進入編輯狀態
看到以下界面 按 insert 按鍵進入編輯狀態:
3: 編輯
將在最下方添加如下代碼 例子:
#NODEPATH
export NODE_HOME=/nodeLihao/node-v6.10.3-linux-x64/bin;
export PATH=$PATH:$NODE_HOME;
#NODEPATH # 為注釋
export NODE_HOME=/nodeLihao/node-v6.10.3-linux-x64/bin; 定義變數 NODE_HOME =號後面跟你需要設置的目錄地址
export PATH=$PATH:$NODE_HOME; 設置環境變數PATH 這裡使用變數 要在前面加$符號
4: 保存
按Esc退出編輯狀態 輸入 :wq 回車 完成保存
5 : 刷新環境變數
輸入命令 source /etc/profile 刷新剛剛修改過的環境變數文件
以下文章點擊率最高
Loading…