gpt4 book ai didi

regex - 如何让 grep 输出所有匹配的行?

转载 作者:太空宇宙 更新时间:2023-11-04 12:40:45 24 4
gpt4 key购买 nike

有人可以解释以下 grep 行为吗?

我有一个文本文件countries.list(每一行都有一个电影标题和制作电影的国家)。我想列出所有包含国家名称的行。

command : grep "UK" countries.list | wc -l 

result: 55

所以这意味着文件中有 55 行匹配,如果我将结果转储到文件中,显然文件有 55 行。

如果我使用:

command grep -c "UK" countries.list 

result: 223523

这意味着有 223523 个匹配

wc -l countries.list  :  1956994 countries.list

每个电影标题都在一个新行上。

如果我打开为什么 grep "UK"countries.list 不返回所有行。

很明显我做错了什么。你能帮我解释一下为什么会这样吗?

此外,如果我只想打印匹配的国家/地区名称:

grep -o "UK" countries.list | wc -l

我得到 223766(与 223523 不同,但仍然比 55 多很多)

最佳答案

感谢您的回复,我找到了答案。
grep 将其作为二进制文件而不是文本文件打开。

提示:$ grep "UK"countries.list 的最后一行:二进制文件 countries.list 匹配

如果我这样做:$ strings countries.list | grep“英国” | wc -l223523

关于regex - 如何让 grep 输出所有匹配的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40285015/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com