Grep: RRTFM

作者:Mitch Frazier

如果您是 Linix/UNIX 的长期用户,您肯定知道 RTFM 的意思(Read The *bleep* Manual,阅读该死的说明书)。我想提供一个新的、相关的缩写,RRTFM,代表 Re-Read The *bleep* Manual(重新阅读该死的说明书)。

我第一次接触 *NIX 是几十年前的事了,最近有人指出了一些新的grep的选项,从那以后我发现这些选项非常有用(更多细节见下文)。如果我在过去几年里重新阅读了手册页,那么这些对我来说就不会那么新了,并且它给我生活带来的丰富性会延长几年。

具体来说,我发现非常有用的新grep选项是

  • -P或者--perl-regexp使grep将您传递的模式解释为 perl 兼容的正则表达式 (PCRE)。PCRE 通常比grep正则表达式
  • 更方便,并且通常更强大。--color

    导致匹配的文本在输出中被着色。当您用 grep 命令搜索包含长行的文件时,这特别有用,它可以使匹配项突出显示。grep注意:通常在其输出要进入管道时不会着色,因此如果您要将输出通过管道传递给或者moreless您需要使用--color=always
  • 才能获得着色。或者-o--only-matching
  • 导致仅输出匹配的文本,行中的所有其他文本不显示。, -r或者-R--recursive导致递归目录并搜索其中的文件。但仅凭这一点并没有您想象的那么有用,您可能需要使用--include--exclude

选项来指定要搜索的文件。

我们都知道变化的速度很快,这适用于我们每天使用的旧标准,因此时不时地重新阅读手册/信息页面以检查新的和有用的功能是值得的。如果您不喜欢这个选择,那么就与新用户交谈。向我指出这一点的人是 Linux 的新手,所以他们第一次阅读手册比我最近得多。

Mitch Frazier 是 Emerson Electric Co. 的嵌入式系统程序员。自 2000 年代初以来,Mitch 一直是Linux Journal的贡献者和朋友。