我正在一个大约 13G 的文件上运行 grep。它正在返回
Binary file file.xml matches
Run Code Online (Sandbox Code Playgroud)
我没想到这一点,我认为它会用我的字符串返回每一行,以便我可以运行以下命令,
grep "searchString" ./file.xml | wc -l
Run Code Online (Sandbox Code Playgroud)
并返回我的大文件中搜索字符串的所有出现次数。
use*_*ser 13
看起来 grep 认为您的 XML 文件是二进制文件而不是文本文件。
如果您想强制 grep 将您的文件视为文本而不考虑内容,您可以使用它的--text开关(假设为 GNU grep),如下所示:
grep --text "searchString" ./file.xml | wc -l
Run Code Online (Sandbox Code Playgroud)
请注意,如果您只想计算匹配项,最好使用grep --count而不是通过管道wc -l,从而节省管道和进程调用。
| 归档时间: |
|
| 查看次数: |
3676 次 |
| 最近记录: |