首页 > 代码库 > 关于环境变量

关于环境变量

/etc/pro此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.

 ~/.bash_pro每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该

 文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.

  另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.

---------------------------------------  

     /etc/bashrc,用户目录下.bashrc有什么区别?      

     一个是针对整个系统所有用户的,一个是针对特定用户的./etc/bashrc修改了以后要重启系统才生效,而用户目录下.bashrc修改了以后重新登录就生效      

     /etc/profile与/etc/bashrc的区别?      

     前一个主要用来设置一些系统变量,比如JAVA_HOME等等,后面一个主要用来保存一些bash的设置.       

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

     并从/etc/profile.d目录的配置文件中搜集shell的设置.      

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

     ~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该      

     文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.      

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

     该文件被读取.      

     ~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.            

     ~/.bash_profile 是交互式、login 方式进入 bash 运行的      

     ~/.bashrc 是交互式 non-login 方式进入 bash 运行的      

     通常二者设置大致相同,所以通常前者会调用后者。      

     .bash_profile 文件在通过控制台(或远程登录, 比如ssh)登录(login)系统的时候被执行的shell脚本.      

     而 .bashrc 则是在打开虚拟终端的时候才会起作用,比如在GNOME,KDE中执行rxvt.   

     怎么生效呢  

  (1)现在发现了一个命令: source,在修改好 .bash_profile 文件后,直接运行这个命令如:

      #soure .bash_profile

      就可以直接让环境变量的修改生效了。

  (2)另外据发现 "." 也可以使配置好的环境变量生效,同上的等效命令为:

      #. .bash_profile 

     “.” 命令应该是soure命令的缩写,欢迎大家发表对本文章的看法。

  (3)退出当前用户,重新进入,也可以使环境变量生效

       /etc/profile:     此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.  


本文出自 “11459345” 博客,谢绝转载!

关于环境变量