当我运行env
时,它在PATH下显示3倍/usr/bin
。PATH
标题下的每个路径都是一样的。
例如-我的scala bin目录显示3次。
但是,在我的.bash_profile中,它只写一次。它也不在bashrc。我需要将这3次出现设置为1,因为即使我删除了.bash_profile中path下的一些路径,它仍然显示2次,这意味着路径仍然是设置的。
echo $PATH
显示了同样的事情。
我用的是macosx
有许多文件可以设置PATH,通常添加到先前定义的$PATH(以免错过任何重要的目录)。
参见http://linuxfromscratch.org/blfs/view/svn/postlfs/profile.html
的指南。你希望看到,除了其他可能:/etc/profile/etc/bashrc~/. bash_profile~/. bashrc
和小心:不要编辑错误的文件或将"仅用于登录的东西"放入"用于非登录shell"文件中,反之亦然。
引用上面链接的/etc/profile的例子,由James Robertson,你可以看到每个文件的含义:
- /etc/profile:系统范围的环境变量和启动程序。
- /etc/bashrc:系统范围的别名和功能应该放在/etc/bashrc中
- ~/。bash_profile:个人环境变量和启动程序应该放到~/.bash_profile中。
- ~/。bashrc:个人别名和功能应该进入~/.bashrc.
(警告:修改/etc/profile必须小心。它被用于许多低级的引导阶段,并且被您的操作系统中运行的几乎所有东西所继承,所以要小心,一个小小的"无害"的更改可能会在您的系统中造成严重的影响)
OK..所以我找到了解决办法。以下是我所做的:-
1) vi ~/.bash_profile
2)做更改
3) source ~/.bash_profile
查看这些更改的效果。
对于每个编辑和随后的源代码命令,似乎暂时保持在当前会话中。
因此,如果我更改了3次,然后执行source
命令,如果我执行echo $PATH
或env
,它会显示3次相同的路径。关闭终端并重新启动它使一切恢复正常。
所以,这只是一个重新启动终端的问题!!
澄清:-不同的平台可能表现不同。我发现macosx-10.7是这样工作的