从 PATH 环境变量中删除路径
要从 PATH 环境变量中删除 PATH,你需要编辑〜/ .bashrc 或〜/ .bash_profile 或/ etc / profile 或〜/ .profile 或/etc/bash.bashrc(特定于发行版)文件并删除分配特定的路径。
你可以在最后阶段在 $PATH
中进行替换,而不是找到确切的分配。
以下将安全地从 $PATH
中删除 $path
:
path=~/bin
PATH="$(echo "$PATH" |sed -e "s#\(^\|:\)$(echo "$path" |sed -e 's/[^^]/[&]/g' -e 's/\^/\\^/g')\(:\|/\{0,1\}$\)#\1\2#" -e 's#:\+#:#g' -e 's#^:\|:$##g')"
要使其永久化,你需要在 bash 配置文件的末尾添加它。
你可以通过功能方式完成此操作:
rpath(){
for path in "$@";do
PATH="$(echo "$PATH" |sed -e "s#\(^\|:\)$(echo "$path" |sed -e 's/[^^]/[&]/g' -e 's/\^/\\^/g')\(:\|/\{0,1\}$\)#\1\2#" -e 's#:\+#:#g' -e 's#^:\|:$##g')"
done
echo "$PATH"
}
PATH="$(rpath ~/bin /usr/local/sbin /usr/local/bin)"
PATH="$(rpath /usr/games)"
# etc ...
这样可以更轻松地处理多个路径。
笔记:
- 你需要在 Bash 配置文件(〜/ .bashrc 或其他)中添加这些代码。
- 运行
source ~/.bashrc
重新加载 Bash 配置(〜/ .bashrc)文件。