Awk简单过滤[1]

示例:

简单的记录了awk条件过滤和赋值变量来进行判断的过滤实例

[root@LinuxEA awk]# cat test1 
3       aa bb
4       ss gg
1       ssyyu
6       ddf
8       ff hh
7       aa bb
9       fff
[root@LinuxEA awk]# 

如上所示,现在需要拿出以aa bb的行,也就是3和7(test1的中间空白为tab)

1,直接过滤

版权属于:www.linuxea.com原文链接:http://www.linuxea.com/1441.html转载时须注明出处及本声明

直接过滤aa bb而后打印

[root@LinuxEA awk]# awk '/aa bb/ {print $1}' test1 
3
7

2,赋值判断

[root@LinuxEA awk]# var1="aa bb"

[root@LinuxEA awk]# awk -F\t -v val="$var1" '{if($2==val)print $1}' test1 
3
7

首先赋值var1变量,而后将var1赋给val,在判断$2是否等于val(也就是var1),如果等于就打印出结果

这里的$var1是需要双引号引起来的

版权属于:www.linuxea.com原文链接:http://www.linuxea.com/1441.html转载时须注明出处及本声明

awk.png