grep或sed或awk +匹配WORD

时间:2010-09-06 12:05:41

标签: grep

我执行以下操作以获取文件中的所有WORD,但不是以“//”开头的行

  grep -v "//"  file | grep WORD

我可以得到一些其他优雅的建议来查找文件中的所有WORD,除了以//

开头的行

备注:“//”没有必要存在于该行的第一行,它可能是该行的第一行之后的某些空格,然后出现//

例如

更多文件

 // WORD

 AA WORD

         // ss WORD

利迪娅

2 个答案:

答案 0 :(得分:1)

grep -v "//"  file | grep WORD

这也将在WORD之后排除任何带有“//”的行,例如:

  

WORD //这一行

使用GNU Grep的更好方法是:

 grep -v '^[[:space:]]*//' file | grep 'WORD'

...首先过滤掉以零或多个空格开头的任何行和一个注释字符串。

尝试将这两个条件放在一个正则表达式中可能不是更优雅。

答案 1 :(得分:0)

awk '!/^[ \t]*\/\// && /WORD/{m=gsub("WORD","");total+=m}END{print total}' file