Mac系统.zshrc存在eval无限循环无法开终端,如何不通过终端清空该文件?
故障原因
你编写的代码触发了无限循环逻辑:每次终端启动加载.zshrc配置时,会优先执行eval $(foo)调用foo函数,而foo函数的作用是打开新的终端窗口,新窗口启动后会再次加载.zshrc、触发新一轮的终端打开操作,循环往复导致终端无法正常使用。
无需终端修改的解决方法
- 打开访达,进入你的个人用户目录(侧边栏带有小房子标识、名称为你的系统用户名的目录)
- 按下快捷键
Command + Shift + .显示系统隐藏文件(.开头的文件默认在访达中隐藏) - 找到名为
.zshrc的文件,右键选择用「文本编辑」或其他任意文本编辑器打开 - 删除你之前添加的故障代码,也可直接清空整个文件内容后保存
- 重启终端即可恢复正常使用
可选的临时绕开配置方案
如果需要临时进入可用的终端环境操作,可选择该方案:
- 打开启动台,进入「其他」文件夹找到终端应用,点击打开终端的同时按住
Command + Option + Shift + Esc组合键,持续按住几秒直到终端窗口正常弹出,此时终端不会加载.zshrc配置文件 - 进入终端后执行
echo "" > ~/.zshrc即可一键清空配置文件,重启终端就恢复正常
内容的提问来源于stack exchange,提问作者seamus
相关产品推荐
相关产品推荐

