有人可以解释以下grep行为吗?
我有一个文件countries.list
(每行都有一个电影标题和制作电影的国家/地区)。
我想列出包含国家/地区名称的所有行。
command : grep "UK" countries.list | wc -l
结果:55
这意味着在文件中有55行匹配,如果我将结果转储到文件中,显然文件有55行。
如果我使用:
command grep -c "UK" countries.list
结果:223523
这意味着这是223523场比赛
wc -l countries.list : 1956994 countries.list
每个电影标题都在新的一行。
如果我打开为什么grep" UK" countries.list
不会返回所有行。
此外,如果我只想打印匹配的国家/地区名称:
grep -o "UK" countries.list | wc -l
我得到223766(与223523不同,但仍然超过55)
答案 0 :(得分:0)
感谢您的回复,我找到了答案 grep将此打开为二进制文件而不是文本文件。
提示:CustomEvent
的最后一行:
二进制文件countries.list匹配
如果我这样做:
$ grep "UK" countries.list
$ strings countries.list | grep "UK" | wc -l