Linux修改环境变量,很简单但很重要
一、Linux的变量种类
按变量的生存周期来划分,Linux变量可分为两类:
1. 永久的:需要修改配置文件,变量永久生效。
2. 临时的:使用export命令行声明即可,变量在关闭shell时失效。
二、设置变量的三种方法
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 如果没就更改.bashrc文件.
添加如下内容:
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时就没有这个变量,需要使用的话还需要重新定义。
三、另外
1.使用readonly命令设置只读变量,如果使用了readonly命令的话,变量就不可以被修改或清除了。
2.使用unset命令来清除环境变量 $ unset TEMP_KEVIN #删除环境变量TEMP_KEVIN
[liul@test dataload]$ ls -l
total 28896
drwxr-xr-x 8 liul liul 4096 Sep 24 17:10 PyYAML-3.10
-rw-r--r-- 1 liul liul 241524 Sep 24 16:40 PyYAML-3.10.tar.gz
-rwxr-xr-x 1 liul liul 14466821 Feb 16 2012 greenplum-loaders-4.2.1.0-build-2-RHEL5-x86_64.bin
-rw-r--r-- 1 liul liul 14304561 Mar 1 2012 greenplum-loaders-4.2.1.0-build-2-RHEL5-x86_64.zip
drwxrwxr-x 5 liul liul 4096 Oct 9 17:53 install
drwxrwxr-x 2 liul liul 4096 Oct 9 17:58 shell
drwxr-xr-x 8 liul liul 4096 Oct 9 23:51 yaml-0.1.4
-rw-r--r-- 1 liul liul 471759 Sep 24 16:47 yaml-0.1.4.tar.gz
[liul@test dataload]$ ls -l--time-style '+%Y/%m/%d %H:%M:%S'
total 28896
drwxr-xr-x 8 liul liul 4096 2012/09/24 17:10:17 PyYAML-3.10
-rw-r--r-- 1 liul liul 241524 2012/09/24 16:40:10 PyYAML-3.10.tar.gz
-rwxr-xr-x 1 liul liul 14466821 2012/02/16 00:23:25 greenplum-loaders-4.2.1.0-build-2-RHEL5-x86_64.bin
-rw-r--r-- 1 liul liul 14304561 2012/03/01 17:14:16 greenplum-loaders-4.2.1.0-build-2-RHEL5-x86_64.zip
drwxrwxr-x 5 liul liul 4096 2012/10/09 17:53:00 install
drwxrwxr-x 2 liul liul 4096 2012/10/09 17:58:26 shell
drwxr-xr-x 8 liul liul 4096 2012/10/09 23:51:18 yaml-0.1.4
-rw-r--r-- 1 liul liul 471759 2012/09/24 16:47:13 yaml-0.1.4.tar.gz
在~/.bash_profile中加入export TIME_STYLE='+%Y/%m/%d %H:%M:%S'
[liul@test dataload]$ vi ~/.bash_profile
[liul@test dataload]$ source ~/.bash_profile
[liul@test dataload]$ cat ~/.bash_profile | grep TIME
export TIME_STYLE='+%Y/%m/%d %H:%M:%S'
[liul@test dataload]$ source ~/.bash_profile
[liul@test dataload]$ ls -l
total 28896
drwxr-xr-x 8 liul liul 4096 2012/09/24 17:10:17 PyYAML-3.10
-rw-r--r-- 1 liul liul 241524 2012/09/24 16:40:10 PyYAML-3.10.tar.gz
-rwxr-xr-x 1 liul liul 14466821 2012/02/16 00:23:25 greenplum-loaders-4.2.1.0-build-2-RHEL5-x86_64.bin
-rw-r--r-- 1 liul liul 14304561 2012/03/01 17:14:16 greenplum-loaders-4.2.1.0-build-2-RHEL5-x86_64.zip
drwxrwxr-x 5 liul liul 4096 2012/10/09 17:53:00 install
drwxrwxr-x 2 liul liul 4096 2012/10/09 17:58:26 shell
drwxr-xr-x 8 liul liul 4096 2012/10/09 23:51:18 yaml-0.1.4
-rw-r--r-- 1 liul liul 471759 2012/09/24 16:47:13 yaml-0.1.4.tar.gz
[liul@test dataload]$