举例说明linux下更改环境变量PATH的办法。
要把/etc/apache/bin目录添加到PATH中,方法有三:
1.#PATH=$PATH:/etc/apache/bin
使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,PATH 设置就会失效
2.#vi /etc/profile
在适当位置添加 PATH=$PATH:/etc/apache/bin (注意:= 即等号两边不能有任何空格)
这种方法最好,除非你手动强制修改PATH的值,否则将不会被改变
3.#vi ~/.bash_profile
修改PATH行,把/etc/apache/bin添加进去
这种方法是针对用户起作用的
注意:想改变PATH,必须重新登陆才能生效,以下方法可以简化工作:
如果修改了/etc/profile,那么编辑结束后执行source profile 或 执行点命令 ./profile,PATH的值就会立即生效了。
这个方法的原理就是再执行一次/etc/profile shell脚本,注意如果用sh /etc/profile是不行的,因为sh是在子shell进程中执行的,即使PATH改变了也不会反应到当前环境中,但是source是在当前 shell进程中执行的,所以我们能看到PATH的改变。
这样你就学会Linux系统下修改环境变量PATH路径的方法。
(转载)
=======================================
通过实验发现一个问题,也就是第二个方法,修改完/etc/profile并执行完source以后,使用echo确实可以看到目录被加载进环境变量了,但是退出后任然失效,这个和第一个方法是一样的。只有在重启之后这个配置才会永久生效。同时如果这个时候你把目录排除了,你再执行,发现目录还是在的,而且就算你source或者退出终端以后问题依旧,只有重启才会生效。
而且在我们加入目录后执行N次SOURCE你就会发现path里面有几个你加入的目录
比如你加入的是/root
然后执行了5次source
你就会发现在PATH里面有5个/root
等有时间的时候我再改一下脚本吧……还没有看到shell那儿呢~