在点击ABC时排除loremABCipsum

时间:2014-01-20 07:36:08

标签: regex grep

如何忽略grep中的某些结果? 例如,我需要找到包含ABC的所有行,除了loremABCipsum和xyzABC123。

3 个答案:

答案 0 :(得分:1)

使用管道:

grep -e ABC [filename] | grep -v loremABCispum | grep -v xyzABC123

答案 1 :(得分:0)

您可以使用awk

awk '/ABC/ {if (!/xyzABC123|loremABCipsum/) print}' file

这将使用ABC打印所有行,但如果有xyzABC123loremABCipsum

则不会

逻辑测试版:

awk '{f=0} /ABC/ {f=1} /xyzABC123|loremABCipsum/ {f=0} f' file

答案 2 :(得分:0)

假设您的grep版本支持PCRE,请使用否定前瞻:

grep -P '(?!=xyz|lorem)ABC(?!123|ipsum)' filename