微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么我从grep -oc“foo”文件和grep -o“foo”文件获得不同的答案? wc -l? 哪个是对的?

这个问题说明了这一切…我试图find大文件中特定string的出现次数

答案是类似的… …像pipe道50000左右,49000单纯只是平原grep – oc …

任何人都可以解释为什么我得到不同的答案,哪一个是正确的?

谢谢您的帮助。

有没有办法在posix shell或bash中扇出一个stream?

在循环中运行命令时更改输出文件

grep -Po'… K …'是做什么的? 如何才能达到这个效果呢?

Bash脚本正则expression式

为Linux(Gnome)shell脚本创buildUI的工具

如何在Linux中只处理新的(未经处理的)文件

以recursion模式列出文件夹中的所有SVN存储库URL

安装rvm结果bash:没有这样的文件或目录

通过bash脚本与来自多个目录的文件进行交互

Windows bat替代Bash内联命令

grep -c只计算匹配的行数,而grep -o在一个单独的行上打印每个匹配的部分,这意味着wc -l会打印比实际匹配更多的“行”。

据我grep -oc , grep -oc和grep -c之间没有任何有效的区别,因为压缩打印意味着不再有-o结果效果

例如,用一个双重匹配和一个单独的匹配打印三行“文件”:

$ printf 'foo foonbarnfoon' | grep -oc foo 2 $ printf 'foo foonbarnfoon' | grep -o foo foo foo foo

在--only-matching ( -o )模式下,grep有时会为单个匹配行输出多行。

alex@yuzu:~$ echo -e "foonbarnbaz" foo bar baz alex@yuzu:~$ echo -e "foonbarnbaz" | grep -ooo o

但是--count ( -c )会计算匹配的行数。

alex@yuzu:~$ echo -e "foonbarnbaz" | grep -oc o 1

所以grep -oo | wc -l grep -oo | wc -l计算所有的比赛,即使在一条线上有多个比赛。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐