(轉載)設置環境變量永久生效和臨時生效 export PS1

source/etc/profile是讓/etc/profile文件修改後當即生效,html

還有一種方法是:. /etc/profilelinux

注意:.和/etc/profile有空格shell

linux中source命令bash

source命令也稱爲「點命令」也就是一個符號(.).source命令一般用於從新執行剛修改的初始或文件,使之當即生效,而沒必要註銷並從新登陸。spa

 

1、Linux的變量種類
按變量的生存週期來劃分,Linux變量可分爲兩類:
1. 永久的:須要修改配置文件,變量永久生效。
2. 臨時的:使用export命令行聲明便可,變量在關閉shell時失效。
2、設置變量的三種方法
1. 在/etc/profile文件中添加變量【對全部用戶生效(永久的)】
用VI在文件/etc/profile文件中增長變量,該變量將會對Linux下全部用戶有效,而且是「永久的」。
例如:編輯/etc/profile文件,添加CLASSPATH變量
# vi /etc/profile
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
注:修改文件後要想立刻生效還要運行# source /etc/profile否則只能在下次重進此用戶時生效。
2. 在用戶目錄下的.bash_profile文件中增長變量【對單一用戶生效(永久的)】
用VI在用戶目錄下的.bash_profile文件中增長變量,改變量僅會對當前用戶有效,而且是「永久的」。
例如:編輯guok用戶目錄(/home/guok)下的.bash_profile
$ vi /home/guok/.bash.profile
添加以下內容:
export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib
注:修改文件後要想立刻生效還要運行$ source /home/guok/.bash_profile否則只能在下次重進此用戶時生效。
3. 直接運行export命令定義變量【只對當前shell(BASH)有效(臨時的)】
在shell的命令行下直接使用[export變量名=變量值]定義變量,該變量只在當前的shell(BASH)或其子shell(BASH)下是有效的,shell關閉了,變量也就失效了,再打開新shell時就沒有這個變量,須要使用的話還須要從新定義。 3、另外命令行

 

 

 

1.使用readonly命令設置只讀變量,若是使用了readonly命令的話,變量就不能夠被修改或清除了。htm

2.使用unset命令來清除環境變量 $ unset TEMP_KEVIN #刪除環境變量TEMP_KEVINget

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~io

 

用法: source filename 或. filename編譯

附:source命令除了上述的用途以外,還有一個用途。

在對編譯系統核心時經常須要輸入一長串的命令,如:
make mrproper
make menuconfig
make dep
make clean
make bzImage
…………
若是把這些命令作成一個文件,讓它自動順序執行,對於須要屢次反覆編譯系統核心的用戶來講會很方便,而用source命令就能夠作到這一點,它的做用就是把一個文件的內容當成shell來執行,先在linux的源代碼目錄下(如/usr/src/linux-2.4.20)創建一個文件,如make_command,在其中輸入一下內容:
make mrproper &&
make menuconfig &&
make dep &&
make clean &&
make bzImage &&
make mo dules &&
make modules_install &&
cp arch/i386/boot/bzImage /boot/vmlinuz_new &&
cp System.map /boot &&
vi /etc/ lilo.conf &&
lilo -v
文件創建好以後,每次編譯核心的時候,只須要在/usr/src/linux-2.4.20下輸入:
source make_command
便可,若是你用的不是lilo來引導系統,能夠把最後兩行去掉,配置本身的引導程序來引導內核。
順便補充一點,&&命令表示順序執行由它鏈接的命令,可是隻有它以前的命令成功執行完成了以後才能夠繼續執行它後面的命令。
相關文章
相關標籤/搜索