编辑 bash $PATH

编辑 bash $PATH

我想为所有 shell 全局编辑 bash $PATH。有人告诉我,我可以从 .bash_profile 或 .bashrc 中添加/删除内容来执行此操作,但是当我查看这些文件时,它们缺少我在查看时看到的文件夹。

echo $PATH

有没有办法从终端本身全局编辑所有 shell 会话的 $PATH?或者还有其他方法可以配置这个吗?这是我的道路:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/users/developer/desktop/stack/3.dev-ops/build-test-deploy/front-end-package-manager/composer/bin:/usr/local/go/bin:/usr/local/share/dotnet:/opt/X11/bin:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands:/Applications/Wireshark.app/Contents/MacOS:/Applications/Xamarin Workbooks.app/Contents/SharedSupport/path-bin

我正在尝试删除这个:

/users/developer/desktop/stack/3.dev-ops/build-test-deploy/front-end-package-manager/composer/bin

答案1

BASH 首先从文件 /etc/profile 读取并执行命令(如果该文件存在)。之后,它按顺序查找 ~/.bash_profile、~/.bash_login 和 ~/.profile,并从第一个存在且可读的命令中读取并执行命令。

因此,您的 PATH 变量要么在您的主目录中设置,要么/etc/profile.bash_profile, .bash_login, 或.profile从您的主目录设置。

如果您想在路径中添加或删除目录,您应该查看那里。如果您的路径是从全局设置的,/etc/profile我建议PATH您在~/.bash_profile.最好不要更改全局/etc/profile文件。

编辑:看起来您使用的是 macOS,因此答案是编辑您的/etc/paths文件并删除有问题的目录。

请务必在以后的问题中解释您正在运行 macOS 以节省时间,因为它们的配置与 Linux 等略有不同。

答案2

可以在 bash 启动时读取的任何各种文件中设置 PATH。要找到所有这些,请在新的iterm 的实例:

grep --color -rlH 'PATH=' \
     ~/.bashrc ~/.profile ~/.bash_profile ~/bash.login \
     ~/.bash_aliases /etc/bash.bashrc /etc/profile \
     /etc/profile.d/* /etc/environment \
     ~/.xinitrc ~/.xprofile /etc/xprofile \
     /etc/paths /etc/paths.d/
                        2> /dev/null

这些是标准的。如果您还从其中之一获取其他文件,事情可能会变得更加复杂。

如果您找到设置 PATH 变量的文件,那么您就完成了并且可以编辑该文件。如果没有,可能您已经删除了一些软件包。报告的 PATH 是什么新的iTerm 的实例?

相关内容