grep:使用管道时大文件内存耗尽

grep:使用管道时大文件内存耗尽

grep当我尝试在不使用管道的情况下查找特定字节时,我得到一些输出:

$ grep -aboP "\\x55" bigfile
510:U
1049086:U
1049598:U

但是,当通过管道提供模式时,会出现内存耗尽错误:

$ echo "\\\\x55" | grep -aboPf - bigfile
grep: memory exhausted

为什么会发生这种情况以及如何使其发挥作用?

答案1

好吧,使用单引号并删除一些反斜杠似乎可行:

$ echo '\x55' | grep -aboPf - bigfile
510:U
1049086:U
1049598:U

感谢@StéphaneChazelas 的提示。

相关内容