在Linux下做开发首先就是需要配置环境变量,下面以配置java环境变量为例介绍三种配置环境变量的方法。
1.修改/etc/profile文件
如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性问题。
(1)用文本编辑器打开/etc/profile
(2)在profile文件末尾加入:
JAVA_HOME=/usr/share/jdk1.5.0_05
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
(3)重新登录(在profile文件添加或修改的内容需要注销系统才能生效)。
注解:
a. 你要将 /usr/share/jdk1.5.0_05jdk 改为你的jdk安装目录
b. linux下用冒号“:”来分隔路径
c. $PATH / $CLASSPATH / $JAVA_HOME 是用来引用原来的环境变量的值,在设置环境变量时特别要注意不能把原来的值给覆盖掉了,这是一种常见的错误。
d. CLASSPATH中当前目录“.”不能丢,把当前目录丢掉也是常见的错误。
e. export是把这三个变量导出为全局变量。
f. 大小写必须严格区分。
2. 修改.bashrc文件
这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的.bashrc文件就可以了。
(1)用文本编辑器打开用户目录下的.bashrc文件
(2)在.bashrc文件末尾加入:
set JAVA_HOME=/usr/share/jdk1.5.0_05
export JAVA_HOME
set PATH=$JAVA_HOME/bin:$PATH
export PATH
set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH
(3)重新登录
3. 直接在shell下设置变量
不赞成使用这种方法,因为换个shell,你的设置就无效了,因此这种方法仅仅是临时使用,以后要使用的时候又要重新设置,比较麻烦。
只需在shell终端执行下列命令:
export JAVA_HOME=/usr/share/jdk1.5.0_05
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
【附注】
1、特殊字符介绍。
例如在profile中有如下内容,通过以下内容说明特殊符号的用法。
export A=/q/jing:aaa/cc/ld
export B=.:/liheng/wang
export A=/cd/cdr:$A
大家注意红色的符号:
: 表示并列含义,例如A变量值有多个,用:符号进行分离。
. 表示你操作的当前目录。例如pap命令会查找B环境变量。
在/home键入pap命令,系统首先在/home目录下(即当前路径)查找关于 B 的内容,如果没有在/liheng/wang目录下查找关于B的内容。
$ 表示该变量本次定义之前的值,例如$A代表/q/jing:aaa/cc/ld。也就是说
A=/cd/cdr:/q/jing:aaa/cc/ld
2、使用env命令显示所有的环境变量 。在命令提示符下键入env就行了。
set命令显示所有本地定义的Shell变量。
3、常见的环境变量
PATH:决定了shell将到哪些目录中寻找命令或程序
HOME:当前用户主目录
MAIL:是指当前用户的邮件存放目录。
SHELL:是指当前用户用的是哪种Shell。
HISTSIZE:是指保存历史命令记录的条数
LOGNAME:是指当前用户的登录名。
HOSTNAME:是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。
LANG/LANGUGE:是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。
PS1:是基本提示符,对于root用户是#,对于普通用户是$。
PS2:是附属提示符,默认是“>”。可以通过修改此环境变量来修改当前的命令符,比如下列命令会将提示符修改成字符串“Hello,My NewPrompt 🙂 ”。
# PS1=” Hello,My NewPrompt 🙂 ”
4、使用修改.bashrc文件进行环境变量的编辑,只对当前用户有用。
使用修改 /etc/profile 文件进行环境变量的编辑,是对所有用户有用。大家一定要注意区别。
5、profile文件在系统启动时将被运行。大家可以在里面加入其他命令,但是一定要加正确,不然的话系统会启动不起来的。