shell中的环境变量,zsh环境变量配置中遇到的问题

本文探讨了从Bash切换到Zsh后的常见问题,包括fzf环境变量脚本加载失败及自定义配置引发的命令未找到错误。揭示了Zsh中path变量不区分大小写的特点,并提供了解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

结论:一般看似严重的问题,到头来往往仅仅是很小的问题。

声明:在zsh中,环境变量path与PATH是等价的,不区分大小写。

1. 问题

1.1 从bash切到zsh后,source fuzzy finder即fzf相关的环境变量脚本时,一直报bind command not found,云云。

- shell加载fzf的shell增强脚本,bash shell为sourc ~/.fzf.bash, zsh shell为source ~/.fzf.zsh。从bash切到zsh后,此文件需要用~/.fzf/install命令重新生成,与原有的~/.fzf.bash不同。

1.2 从bash切到zsh后,应用一个自定义的bashrc增加版配置文件后,再引用其中的命令,会各种command not found找不到。

- 花费了两天的时间,才排查出来,是因为zsh shell里面的path与PATH一致,不区分大小写。原有bash shell配置脚本里面,用了一个小写的path变量,这个变量,在bash下没问题,因为bash区分大小写;zsh下,此变量有结果后,会覆盖系统的PATH变量。于是,就是各种shell命令找到。

究其根源,是因为zsh的path变量不区分大小写。另外,也提醒我们,在编程变量命名时,要避免系统命令或关键字中的同名字符干扰。

 - zsh出现的的command not found,除了需要export相关的PATH变量之外,也要随时注意到PATH变量输出的结果是否正确。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值