MacOS下执行ln命令出现zsh: unknown file attribute错误求助
解决zsh执行
ln -s (which nvim) /opt/homebrew/bin/vim报错的问题 问题原因
在zsh中,圆括号()会被解析为文件属性修饰符(用于文件名匹配场景),而非bash环境里的子shell/命令替换语法。你输入的(which nvim)会被zsh误判为要解析h(来自which字符串里的字母h)这个文件属性,从而抛出unknown file attribute: h错误。
修复命令
将命令替换语法改为zsh支持的$()格式即可:
ln -s $(which nvim) /opt/homebrew/bin/vim
补充说明
zsh中执行命令替换有两种合法方式:
- 反引号格式:
ln -swhich nvim/opt/homebrew/bin/vim(不推荐,嵌套使用时易出错) $()格式:ln -s $(which nvim) /opt/homebrew/bin/vim(推荐,可读性高且支持嵌套场景)
内容的提问来源于stack exchange,提问作者va.gaidenko
相关产品推荐
相关产品推荐

