我过去在 OS X 中的 Zsh 中所做的一些研究的笔记中有以下内容。
在
~/.zshenv
和之间~/.zshrc
,OSX 似乎调用了/etc/.zprofile
哪个调用path_helper
,哪个本身重新创造PATH
使用/etc/paths
和/etc/paths.d
上面似乎表明,如果我想使用自己的PATH
Zsh non-interative
shell,我应该不是在 中进行这些修改.zshenv
。
这很奇怪,因为上面的那些路径(/etc/.zprofile
/etc/paths
和/etc/paths.d
)不是用户文件和他们重置小路
- Zsh 在 OS X 中加载的具体点文件是什么?
/etc/paths
这些路径位置(例如和)的作用是什么/etc/paths.d
?它们是 OSX 独有的吗?- 在 OSX 中为 shell(例如 Zsh)设置 PATH 的建议做法是什么?
答案1
- 与任何其他 Zsh 安装相同:http://zsh.sourceforge.net/Doc/Release/Files.html#Startup_002fShutdown-Files
- 这些是 macOS 独有的,用于
/etc/zprofile
填充您的$path
/$PATH
。 - 默认情况下,您实际上不需要在 macOS 上执行任何操作。一切
$path
相关的事情都已经被设置好了/etc/zprofile
。如果您确实需要添加其他目录,那么我建议在您的文件$path
中添加如下内容:~/.zshrc
这将我的特定目录放在其余目录之前typeset -U PATH path path=( ~/Applications/apache-tomcat-8.5.55/bin /usr/local/opt/ncurses/bin $path[@] )
$path
,确保首先搜索它们并-U
确保$path
没有任何重复的条目。