for dir in /usr/local/git/bin /usr/local/bin; do
case "$PATH" in
$dir:*|*:$dir:*|*:$dir) :;; # already there, do nothing
*) PATH=$PATH:$dir # otherwise add it
esac
done
下面是一个针对zsh的版本:
for dir in /usr/local/git/bin /usr/local/bin; do
if (( ${path[(i)$dir]} > $#path )); then
path+=($dir)
fi
done
6条答案
按热度按时间rqcrx0a61#
变量
PATH
包含一个用冒号分隔的目录列表,因此如果您想添加多个目录,只需在它们之间放置一个冒号:这种语法适用于任何与Bourne兼容的shell(sh、ksh、bash、zsh......),但是zsh(MacOS最新版本的默认shell)也以另一种方式公开PATH--作为一个名为(小写)
$path
的变量,它是一个数组而不是一个字符串,所以你可以这样做:在这两种情况下,你可能需要在添加目录之前检查一下,确保该目录不在PATH中。下面是使用通用语法时的情况:
下面是一个针对zsh的版本:
但是在Zsh中,你也可以将数组vars标记为只接受唯一的条目:
甚至让你自己的路径类变量镜像到数组中:
dluptydi2#
尝试将$PATH放在末尾。
epfja78i3#
要使路径的编辑值在下一个会话中保持不变
这将在编辑器中打开.bash_profile,在将您想要的内容添加到以冒号分隔每个值的路径后,在以下内容中写入。
保存,退出,重新启动您的终端和享受
e5nqia274#
我也有同样的问题。
cd到../etc/,然后使用ls确保您的“paths”文件在,vim paths,在文件末尾添加“/usr/local/bin”。
wr98u20j5#
我觉得这很好
xesrikrc6#
1.检查节点--版本,仍在使用旧版本。
1.原子. bash配置文件
1.删除指向旧节点版本的$PATH,在我的示例中,它是/usr/local/bin/node/@node8
1.将其添加并保存到$PATH,而不是"导出路径= $PATH:/usr/local/git/bin:/usr/local/bin"
1.关闭所有使用节点的应用程序(终端、模拟器、浏览器博览会等)
1.重新启动终端并检查节点--版本