【问题标题】:Linux search for word and show entire lineLinux搜索单词并显示整行
【发布时间】:2012-11-02 06:36:49
【问题描述】:

我有一个非常大的日志文件(6 gig)。

我想搜索“2012 年 11 月 12 日”并打印出每一行。

我是 linux 新手,不知道这是如何完成的。很可能需要更多选项来查看 X 行并继续搜索。

【问题讨论】:

    标签: linux find grep


    【解决方案1】:

    您可以使用grep 显示匹配行,并使用less 作为寻呼机:

    grep 'Nov 12 2012' /path/to/logfile | less
    

    在每页末尾键入“空格”以前进到下一个结果屏幕。

    【讨论】:

      【解决方案2】:
      grep --after-context=5 --before-context=10 'Nov 12 2012' yourfile.log
      

      这将显示包含您的日期文本的每一行,以及匹配行之前的 10 行文本和匹配行之后的 5 行。

      【讨论】:

      • 谢谢,原来我也需要这个 Marc B。非常有帮助。
      • 我使用grep --after-context=5 --before-context=10 'Nov 12 2012' yourfile.log | tail -n 80 仅显示最后 5 次出现,包括之前的 10 行和之后的 5 行。 5*(1+10+5)=80
      【解决方案3】:

      你可以使用grep如下:

      grep 'Nov 12 2012' file_to_search.log > search_results.log
      

      一些解释:

      • grep 是用于搜索模式的命令/工具的名称
      • 'Nov 12 2012':紧跟在 grep 之后并至少用 1 个空格分隔,您指定要搜索的模式
      • file_to_search.log:作为grep 的最后一个参数,您指定要搜索的文件
      • > search_results.log> 表示输出redirection。这里的意思是“将此命令的输出写入一个名为search_results.log的文件。如果该文件已经存在,则完全覆盖它。

      获得输出后,您可以使用您选择的文本编辑器或less 查看结果,因此请使用以下任一选项:

      less search_results.log
      gedit search_results.log
      emacs search_results.log
      vim search_results.log
      

      【讨论】:

        【解决方案4】:

        以脚本格式打开文件,然后使用您要查找的关键字进行搜索,如下所示。

        $vi <logfilename>
             &
        :/search
        

        【讨论】:

          【解决方案5】:

          这是在大型日志文件中定位错误的好方法:grep --after-context=5 --before-context=10 'Error' yourfile.log 或 grep --after-context=5 --before- context=10 'Exception' yourfile.log

          【讨论】:

          • 指定这是使用grep
          【解决方案6】:
          grep -A 5 -B 10 'Nov 12 2012' <yourfile.log>
          

          -A &lt;n&gt; 可查看 n 之后的行,-B &lt;n&gt; 可查看 n 之前的行。 或者,两者一起使用-C &lt;n&gt;,即在搜索文本之前和之后显示n 行。

          【讨论】:

            猜你喜欢
            • 2011-12-20
            • 2015-10-14
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-11-24
            • 2014-02-15
            相关资源
            最近更新 更多