文章目录
gawk匹配特定的行
使用正则表达式
打印所有包含字符’abc’的行,其中test.txt包含的内容如下
abc def ghk
def ghk iou
qwe rtu oip
使用如下gawk来打印匹配的行的话,输出的结果如下
➜ scripts gawk '/abc/{print $0}' test.txt
abc def ghk
其中两个斜线之中的是正则表达式,此gawk只打印匹配正则表达式的行。需要注意的是,不需要正则表达式与全行匹配的,只需要行中包含正则表达式所能匹配的字符串即可。
匹配操作符
可使用匹配操作符来匹配特定的字段满足条件的行,此正则表达式也是不需要全部匹配的,只要特定的字段包含此正则表达式可以匹配的字符串即可。
例如要找到第二个字符串不是def的行
➜ scripts gawk -F' ' '$2 !~ /def/{print $0}' test.txt
def ghk iou
qwe rtu oip
数学表达式
使用匹配操作符的时候,也是可以使用数学表达式来进行匹配的。但是呢数学表达式的时候,就得全部匹配了。
➜ scripts gawk -F' ' '$2 != "def" {print $0}' test.txt
def ghk iou
qwe rtu oip
如果把判断条件由