2

当我尝试使用此命令在 grep 手册中搜索颜色选项时,怎么会这样?

man grep | grep "color"

我没有得到任何结果,但是当我跑步时

man grep

男人输出这个[编辑]

 --colour=[when, --color=[when]]
         Mark up the matching text with the expression stored in GREP_COLOR environment variable.  The possible values of when can be `never', `always' or `auto'.
4

3 回答 3

5

在 grepping 之前尝试通过管道传递手册页col -b以清理任何特殊字符。

例如:

man grep | col -b | grep "color"

或者,指定col -b为您的手册页:

man -P "col -b" grep | grep "color"

您甚至可以在您的 shell 配置文件中设置 MANPAGER 以使其更加永久。

export MANPAGER='col -b | less'

但是,这意味着您在查看手册页时将失去漂亮的颜色。

于 2012-09-26T11:37:46.287 回答
3

“man”的输出包含转义序列(尝试man grep|cat -vT),产生单词“color”的转义序列中没有 ASCII 序列“color”:

   -^H--^H-c^Hco^Hol^Hlo^Hou^Hur^Hr[^H[=^H=_^HW_^HH_^HE_^HN]_^H, -^H--^H-c^Hco^Hol^Hlo^Hor^Hr[^H[=^H=_^HW_^HH_^HE_^HN]
          Surround  the matching string with the marker find in G^HGR^HRE^HEP^HP_^H_C^HCO^HOL^HLO^HOR^HR
          environment variable. WHEN may be 'never', 'always', or 'auto'
于 2012-09-26T11:26:57.967 回答
1
man grep | grep -E 'color'

它完美无缺!

于 2012-09-26T15:42:03.010 回答