zsh 如何对单独的文件夹设置 环境变量?

zshrc已经设置了变量,比如 a = b , 如果在别的文件夹单独设置环境变量a,有什么好的做法?

阅读 6.9k
4 个回答

请用这个吧。

direnv

direnv is an environment variable manager for your shell. It knows how to hook into bash, zsh and fish shell to load or unload environment variables depending on your current directory

https://github.com/zimbatm/direnv

如果你使用的是oh-my-zsh,这个可以写一个插件实现。
在用户目录的.oh-my-zhs/plugins/下新建一个目录,名字就是插件名,目录里放一个“插件名.plugin.zsh”文件。
文件中定义一个function,在其中判断路径,实现你需要的功能。
然后在~/.zshrc里启用这个插件。
OVER

谢邀,但是目前自己在这方面捣腾得不是很多,所以可能给不出比较好的答案,不过之前收藏过一篇 MacTalk 专栏介绍 zsh 的文章,这里分享出来,希望对题主有帮助:

《终极 Shell——ZSH》

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进