彩色正则表达式匹配 – 不会丢失
发布时间:2020-12-14 06:34:33 所属栏目:百科 来源:网络整理
导读:当使用grep –color =总是我可以得到漂亮的颜色突出显示正则表达式匹配。 但是,grep只返回至少有一个匹配的行。相反,我正在寻找一种方法来简单地突出正则表达式匹配,同时保留所有其他输入,而不会丢弃任何匹配的行。 我已经尝试使用sed来处理颜色,并阅读
当使用grep –color =总是我可以得到漂亮的颜色突出显示正则表达式匹配。
但是,grep只返回至少有一个匹配的行。相反,我正在寻找一种方法来简单地突出正则表达式匹配,同时保留所有其他输入,而不会丢弃任何匹配的行。 我已经尝试使用sed来处理颜色,并阅读了grep文档,但我似乎无法得到我想要的内容。 如果我的描述不明显,我想要: INPUT: fred 正则表达式: >“。*红” OUTPUT: > fred(红色) 所以我可以做: list_stuff | color_grep "make_this_stand_out_but_dont_hide_the_rest" 编辑: 我找到了一个不漂亮的解决方案,但它的作用是: 谢谢: 特别是脚本(我修改/简化): function sedgrep () { C_PATT=`echo -e ' 33[33;01m'` C_NORM=`echo -e ' 33[m'` sed -s "s/$1/${C_PATT}&${C_NORM}/gi" } 仍然寻找一个更简单的方法来做到这一点!
最简单的解决方案是使用egrep –color = always’text | ^’,它将匹配所有的行开始,但只对所需的文本进行着色。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |