Linux环境变量设置方法

easthome001 2011-09-07 05:29:38
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时就没有这个变量,需要使用的话还需要重新定义。
...全文
450 28 打赏 收藏 转发到动态 举报
写回复
用AI写文章
28 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangjihao 2011-10-02
  • 打赏
  • 举报
回复
总结的不错,学习啦!
wen_ee 2011-09-26
  • 打赏
  • 举报
回复
努力向大家学习!
zhangyisc 2011-09-26
  • 打赏
  • 举报
回复
谢谢LZ的分享。说明了sh 脚本和source 脚本直接的区别,明确了变量引入为环境变量采用export。
zhiweihuangse 2011-09-20
  • 打赏
  • 举报
回复
多谢分享~
「已注销」 2011-09-19
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 delphiwcdj 的回复:]

我习惯把配置写在~/.bashrc里,再source ~/.bashrc
[/Quote]

这个好用,我也是这样的
px_hao 2011-09-19
  • 打赏
  • 举报
回复
这个还真不知道,能讲的详细点么?
[Quote=引用 11 楼 akrit 的回复:]

lz这个有点儿老了……
新的发行版一般在~/.bashrc设置就成了
有些发行版如ubuntu,~/.bash_profile是不起作用的
要换成.profile
……
[/Quote]
-编译-人生- 2011-09-15
  • 打赏
  • 举报
回复
# vi /etc/profile
  export CLASSPATH=./JAVA_HOME/lib;$JAVA_HOME/jre/lib

这个应该是
# vi /etc/profile
  export CLASSPATH=$JAVA_HOME/lib;$JAVA_HOME/jre/lib
前面还应加上关于export JAVA_HOME=“JDK的安装路径” 的声明
而且楼主的;是全角的,应该为半角;
yyysss520 2011-09-14
  • 打赏
  • 举报
回复
mark ++++
Wenxy1 2011-09-14
  • 打赏
  • 举报
回复
我习惯写一个shell脚本: setenv.sh
进入到某个工程目录后, . setenv.sh.

编辑/etc/profile会影响所有的用户.
子谋 2011-09-13
  • 打赏
  • 举报
回复
支持+学习……
cqbamboo 2011-09-13
  • 打赏
  • 举报
回复
我继续转帖一个。。。

在Ubuntu中有如下几个文件可以设置环境变量

/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。

/etc/environment:在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量。

~/.profile:在登录时用到的第三个文件是。profile文件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

/etc/bash.bashrc:为每一个运行bash shell的用户执行此文件。当bash shell被打开时,该文件被读取。

~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读

还有一个与locale相关是/etc/default/locale
cqbamboo 2011-09-13
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 akrit 的回复:]

lz这个有点儿老了……
新的发行版一般在~/.bashrc设置就成了
有些发行版如ubuntu,~/.bash_profile是不起作用的
要换成.profile
……
[/Quote]

有心人啊
bjeast2011 2011-09-13
  • 打赏
  • 举报
回复
适合初学者了解一下
零基础 2011-09-11
  • 打赏
  • 举报
回复
其实我觉得写入到.bashrc中有一个缺点,就是每次打开一个新的shell就会执行一次。
  • 打赏
  • 举报
回复
-编译-人生- 2011-09-09
  • 打赏
  • 举报
回复
学习了,谢谢分享
微醺-BW 2011-09-09
  • 打赏
  • 举报
回复
不错,支持!
Akrit 2011-09-09
  • 打赏
  • 举报
回复
lz这个有点儿老了……
新的发行版一般在~/.bashrc设置就成了
有些发行版如ubuntu,~/.bash_profile是不起作用的
要换成.profile
……
freetstar 2011-09-09
  • 打赏
  • 举报
回复
挺好,可以给新手看~
tszc2012 2011-09-09
  • 打赏
  • 举报
回复
总结的挺好的,学习了
加载更多回复(8)

19,610

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧