您的位置:首页 > 其它

关于环境变量的一些区别

2012-11-02 15:55 162 查看
1.环境变量是干啥的?

我的理解就是在Unix或者类Unix环境下,你要在command line里面启动某个程序的话,如果没有设置环境变量,那么你就必须一直cd到该程序所在的根目录,然后再启动,这显然有时候会很不方便,没人愿意老cd,而且时间长了未必能记住具体哪个程序安装在哪里。

一种比较有效的方法就是设置环境变量,也就是把你程序的安装路径添加到环境变量中去。

设置了以后会怎样呢? 设置好了以后,你无论在什么路径下,假如你启动程序,然后程序不在该路径下,那么,系统就会去读取环境变量。通过你之前设置好的,系统就可以自动地帮你找到程序的安装路径并且启动它,这样就方便了很多。

2.bash是怎样工作的呢?

首先会检查/etc/profile文件是否存在,如果存在的话,那么就读取。

然后检查~/.bash_profile是否存在,如果存在就读取,它在每次用户登陆系统的时候都会被读取,这里我还是不是很清楚和.profile有什么区别。

~/.bash_profile又会去读取~/.bashrc文件,后者是属于某一个terminal的,也就是说你开一个terminal,就会去读取一次~/.bashrc,这样就有效地将登陆时需要的信息和子terminal所需环境分离开来了。

然后再检查主目录下面的.bash_login,也就是~/.bash_login是否存在,如果存在就读取。

这些执行完了以后就跳出$符号了,也就是command line的抬头。

当你退出shell的时候,会执行~/.bash_logout。

3.怎么设置环境变量?

这个跟不同的操作系统有关,Windows下面具体是怎么设置的不太清楚,好像就是系统设置里面,什么高级什么的就可以直接添加。

Linux和mac稍微麻烦一点点,根据上面的bash的工作原理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: