awk的一些用法

显示b中不包含a的内容
awk 'ARGIND==1 {a[$0]} ARGIND>1&&!($0 in a) {print $0}' a b
ARGIND==1 #文件索引号,1表示第一个文件
!($0 in a) #每取一行都和数组a中保存的值比较,看该行在a中是否存在,然后再取反

[root@localhost ~]# cat aa
11 aa bb cc
11 mm nn dd
11 aa cc nn
22 bb cc dd
22 cc aa ff
33 aa cc dd
[root@localhost ~]# cat cc
a b c 0 11
e f g 1 11
1 4 3 2 11
a 5 4 0 22
a b c 9 22
a m l o 33
awk 'ARGIND==1 {a[$1]=$0} ARGIND==2{print $0,a[$5]}' aa cc
ARGIND==1 {a[$1]=$0} #将文件1中每行都保存在以第一列为下标的数组中
ARGIND==2{print $0,a[$5]} #文件2中,先打印一行,然后在a数组中找到以文件2中第5列为下标的值并打印。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27181165/viewspace-1156863/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/27181165/viewspace-1156863/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值