怎样避免grep时一个长行一大片的输出?

用grep搜索一个字符串,结果屏幕一大片的输出,感觉没完没了,估计是一个长行。请看图:

图片描述

当所要查找的字符串位于这样的长行中时,请问怎么避免这种输出一大片一大片的情况呢?

如果grep无法解决,那有其他替代性的文本搜索命令可以解决吗?

谢谢!

阅读 1.1k
评论
    2 个回答
    • 11.8k

    您可以使用grep选项-o,可以与匹配模式相结合,如 ".{0,10}<original pattern>.{0,10}" 以便查看它周围的一些上下文:

       -o, - 只匹配
              仅显示与PATTERN匹配的匹配行的一部分。

    ..或-c:

       -c, -  count
              抑制正常输出; 而是打印匹配行的计数
              对于每个输入文件。使用-v, -  inverse-match选项,计算不匹配的行。
                                      

    例如:

     grep -oE ".{0,20}mysearchstring.{0,20}" myfile    
      • 4.8k

      man grep 是指南, 你可以只显示匹配的那一部分, 如

      grep -o keyword file

      或者统计出现的行数

      grep -c keyword file
        撰写回答

        登录后参与交流、获取后续更新提醒

        相似问题
        推荐文章