zshrc已经设置了变量,比如 a = b , 如果在别的文件夹单独设置环境变量a,有什么好的做法?
请用这个吧。
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》
alias cd="yourcd"
然后yourcd里面写自己的逻辑
类似的东西可以参考 http://swapoff.org/ondir.html