管道后找不到命令

时间:2016-01-12 12:13:56

标签: macos unix terminal grep

我正在使用OS X Mavericks和zsh(技术上是包哦oh-my-zsh)。

我一直在面对这个bug已经有一段时间了,但还没有办法解决它。有时当我输出一个命令时,它只是说找不到命令。

例如,当我像nmap -sL 192.168.2.0/24 | grep ')'这样进行nmap网络列表扫描时,我有时会收到错误zsh: command not found:  grep。即使我使用向上箭头按钮它也不起作用,所以我必须重写命令,完全相同,它会起作用。

这真的令人讨厌,偶尔发生在其他命令上,主要发生在管道之后。

知道为什么会这样吗?

2 个答案:

答案 0 :(得分:38)

它有时发生这一事实表明您的输入实际上会不时(微妙地)变化。

这取决于您拥有的键盘类型,但我认为您在管道后键入空格时可能会意外按住Alt键。 Alt+Space是一个不间断的空间,zsh无法识别。

答案 1 :(得分:2)

这是在您复制并粘贴命令行时在Mac OS X中发生的常见错误。 您可以做的是删除|

前后的空格

例如kubectl get pods | grep bla-bla-bla现在是kubectl get pods|grep bla-bla-bla

希望有帮助