为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效? 为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里
来源:互联网 发布:巫师3低配置优化 编辑:程序博客网 时间:2024/06/07 08:24
为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效?
为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效?
各位大虾:
我从网上得知,在ubuntu中,使用source /etc/profile命令可以使新建立的环境变量立刻生效而不用重新启动系统,但是
如题,当我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效,而当我把这个终端关闭重新再
打开另一个终端时,刚才有效的环境变量就没了。
我的过程如下:
打开一个终端,输入命令:
$ source /etc/profile
$ echo $LD_LIBRARY_PATH
/home/zzm/installs/BALL/BALL-1.2/lib/Linux-i386-g++_4.1.3
(可见我在/etc/profile文件里面配置的环境变量生效了)
然后,我把这个终端关闭了,再打开一个终端,输入同样的“echo $LD_LIBRARY_PATH”,就什么都没有显示,显然,环境
变量又变得失效了。
我是在/etc/profile里面添加了下面的内容来设置环境变量的:
--------------------------------------
#设置BALL环境变量
export LD_LIBRARY_PATH=/home/zzm/installs/BALL/BALL-1.2/lib/Linux-i386-g++_4.1.3
export BALL=/home/zzm/installs/BALL/BALL-1.2
--------------------------------------
不知道这是怎么回事,总之,我将系统重新启动之后,环境变量就都生效了,无论在哪个终端里面都有效了。
请问,如何在不重新启动系统的情况下,将环境变量生效,而且是永久生效,不再出现我以上遇到的问题?
我从网上得知,在ubuntu中,使用source /etc/profile命令可以使新建立的环境变量立刻生效而不用重新启动系统,但是
如题,当我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效,而当我把这个终端关闭重新再
打开另一个终端时,刚才有效的环境变量就没了。
我的过程如下:
打开一个终端,输入命令:
$ source /etc/profile
$ echo $LD_LIBRARY_PATH
/home/zzm/installs/BALL/BALL-1.2/lib/Linux-i386-g++_4.1.3
(可见我在/etc/profile文件里面配置的环境变量生效了)
然后,我把这个终端关闭了,再打开一个终端,输入同样的“echo $LD_LIBRARY_PATH”,就什么都没有显示,显然,环境
变量又变得失效了。
我是在/etc/profile里面添加了下面的内容来设置环境变量的:
--------------------------------------
#设置BALL环境变量
export LD_LIBRARY_PATH=/home/zzm/installs/BALL/BALL-1.2/lib/Linux-i386-g++_4.1.3
export BALL=/home/zzm/installs/BALL/BALL-1.2
--------------------------------------
不知道这是怎么回事,总之,我将系统重新启动之后,环境变量就都生效了,无论在哪个终端里面都有效了。
请问,如何在不重新启动系统的情况下,将环境变量生效,而且是永久生效,不再出现我以上遇到的问题?
我加到自己的 ~/.bashrc 里,并且重新登录了,每次打开终端执行命令,发现环境变量确实生效了,但是我在应用程序里面实验的时候,比如在Java中调用系统命令,环境变量又失效了。
是不是加到自己的 ~/.bashrc 里的环境变量只是对bash等shell有效,而不是真正的对整个系统有效?
是不是加到自己的 ~/.bashrc 里的环境变量只是对bash等shell有效,而不是真正的对整个系统有效?
==========================================================================
http://www.cnblogs.com/BigIdiot/archive ... 17547.html
在Ubuntu中有如下几个文件可以设置环境变量
1、/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此 文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
2、/etc/environment:在登录时操作系统使用的第二个文件,系统在 读取你自己的profile前,设置环境文件的环境变量。
3、~/.bash_profile:在登录时用到的第三个文件是.profile文 件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用 户登录时,该 文件仅仅执行一次!默认情况下,他设置一些环境变游戏量,执 行用户的.bashrc文件。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该 文件被读取.
4、~/.bashrc:该文件包含专用于你的bash shell的bash信 息,当登录时以及每次打开新的shell时,该该文件被读取。
几个环境变量的优先级
1>2>3
设置永久环境变量
1.环境变量配置中,要先删除.bash_profile中的三行关于.bashrc的 定义,然后把环境变量配置在.bashrc中
2.选择要使用的java环境:update-alternatives –config java
3.要使得刚修改的环境变量生效:source .bashrc
4.查看环境变量:env
可以放到/etc/bash/bashrc,这样就是系统级的
在Ubuntu中有如下几个文件可以设置环境变量
1、/etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件,此 文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
2、/etc/environment:在登录时操作系统使用的第二个文件,系统在 读取你自己的profile前,设置环境文件的环境变量。
3、~/.bash_profile:在登录时用到的第三个文件是.profile文 件,每个用户都可使用该文件输入专用于自己使用的shell信息,当用 户登录时,该 文件仅仅执行一次!默认情况下,他设置一些环境变游戏量,执 行用户的.bashrc文件。/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该 文件被读取.
4、~/.bashrc:该文件包含专用于你的bash shell的bash信 息,当登录时以及每次打开新的shell时,该该文件被读取。
几个环境变量的优先级
1>2>3
设置永久环境变量
1.环境变量配置中,要先删除.bash_profile中的三行关于.bashrc的 定义,然后把环境变量配置在.bashrc中
2.选择要使用的java环境:update-alternatives –config java
3.要使得刚修改的环境变量生效:source .bashrc
4.查看环境变量:env
可以放到/etc/bash/bashrc,这样就是系统级的
============================================================================
CentOS7 /etc/profile 添加环境变量重启后不生效 必须得执行source /etc/profile 解决方法
将环境变量写入/etc/bashrc文件中
为什么每次进入命令都要重新source /etc/profile 才能生效?
- ubuntu
- linux
#编辑JDK8export JAVA_HOME="/usr/java/java8"#编辑mavenexport M2_HOME="/opt/idea-IU-162.1121.32/plugins/maven/lib/maven3"#编辑PATHexport PATH="$JAVA_HOME/bin:$M2_HOME/bin:$PATH"
这是我的/etc/profile末尾的配置,JDK是没有问题的,不用source,echo $JAVA_HOME能出来,问题是如果要用mvn,每次就要source一遍才行,maven我用的是IDEA自带的。
答案:也可以放在~/.bashrc里面。或者在~/.bashrc里面加一句source /etc/profile
阅读全文
0 0
- 为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效? 为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里
- source 命令找不到的情况(修改完/etc/profile文件之后,使其生效)
- 关于source /etc/profile命令
- 关于source /etc/profile命令
- 关于source /etc/profile命令
- etc profile 的使用
- etc profile 的使用
- source /etc/profile后,环境变量对普通用户没有效果
- sudo source /etc/profile 提示找不到source命令
- CentOS7 /etc/profile 添加环境变量重启后不生效 必须得执行source /etc/profile 解决方法
- 【置顶】我的/etc/profile
- 【每天一个linux命令】11. Linux配置环境变量/etc/profile .bashrc .bash_profile等
- 【每天一个linux命令】11. Linux配置环境变量/etc/profile .bashrc .bash_profile等
- 【每天一个linux命令】11. Linux配置环境变量/etc/profile .bashrc .bash_profile等
- Source /etc/profile
- [Linux学习]修改bashrc、/etc/profile环境变量导致系统命令不能使用
- Linux下 环境变量/etc/profile、/etc/bashrc、~/.bashrc的区别
- Linux下 环境变量/etc/profile、/etc/bashrc、~/.bashrc的区别
- python爬取贴吧图片
- 28.ResponseEntity与ResponseBody注解的关系
- spring-data-redis spring-boot日常
- 软件设计原则:低耦合高内聚
- @Aspect
- 为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里面有效? 为什么我使用source /etc/profile这个命令之后,新的环境变量只能在一个终端里
- 安卓的打包发布
- 【剑指offer】合并两个排序的链表
- Android Fragment 你应该知道的一切
- springcloud的config更新配置
- java中二维码的生成及解析(含有图片)
- IntelliJ IDEA The selected directory is not a valid home for JDK 错误解决办法
- LintCode 82. 落单的数
- 服务器项目备份