grep 不断打印相同的字符串

grep 不断打印相同的字符串

我输入grep ch->spl[4] *shell 来查找 mud 代码中的某些内容,现在 grep 已经失效了。每次我尝试 grep 任何内容时,它都会将 spl[4] 放在文件名前面,就像这样。

[:spl[4]:spl[4]:spl[4]:spl[4]:spl[4]:spl[4]:spl[4]:spl[4]:spl[4]:act_wiz.c:           if ( vch->timer > 0 )

问题是我该如何清除/停止这个以便我可以恢复正常的 grep?

答案1

做什么grep ch->spl[4] *?它将在当前目录中的所有文件(和目录)中搜索模式ch-,并将结果保存在文件中spl[4]。为了避免这种情况,你应该总是引用你的 grep 模式:

grep "ch->spl[4]" *

不过,你描述的行为非常奇怪,没有理由改变你的grep工作。可能发生的情况是,你继续搜索文件spl[4] (因为你正在 grepping *),并且该文件包含你看到的输出。如果你删除它,事情可能会恢复正常。

相关内容