我记得我前段时间用过brew。但是现在当我尝试运行它时,我得到了
➜ ~ brew
zsh: command not found: brew
但是有一个/usr/local/bin/brew
我可以运行的别名。它的位置也在我的PATH
变量中:
➜ ~ 回声 $PATH /Users/kosh/.rvm/gems/ruby-3.0.2/bin:/Users/kosh/.rvm/gems/ruby-3.0.2@global/bin:/Users/kosh/.rvm/rubies/ruby- 3.0.2/bin:/usr/local/opt/gradle@6/bin:” /usr/local/bin :/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/ bin:/Users/kosh/Documents/Development/flutter/bin:/Users/kosh/.rvm/bin://Users/kosh/Library/Android/sdk/tools://Users/kosh/Library/Android/sdk /tools/bin://Users/kosh/Library/Android/sdk/platform-tools”
为什么会这样?我该如何解决?
作为 shell,我使用 Oh My Zsh。
假设:在您的启动脚本中某处有类似的内容:
应该是这样的:
此时您的
$PATH
扩展为/usr/local/bin:…
. 因为花括号对 shell来说不是特殊的,所以在引号删除阶段它们不会被删除。实际上,它们确实出现在您的新$PATH
.在
$PATH
您发布的帖子中,最相似的条目/usr/local/bin
是”/usr/local/bin
which is not/usr/local/bin
。同样//Users/kosh/Library/Android/sdk/platform-tools”
不是//Users/kosh/Library/Android/sdk/platform-tools
。一些网站将常规引号更改为花引号,因为显然它们的目的是保存文献或任何非技术文本(花引号看起来不错),而不是代码。IMO 这种行为表明该站点不是任何代码的良好来源。也许你已经从这样的网站复制。
或者,也许您已经在“更清楚”的文本编辑器中编辑了一个启动脚本,并将常规引号更改为弯引号。
您应该检查添加到您的每个脚本
$PATH
,找到这些花引号并修复它们(更改为常规双引号)。并且永远不要在 shell 脚本中使用花引号。