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