awk

vi mytest
123 abc def e def
123 abc def e def
123 ABC DEF E DEF
456 ABC def E DEF
oiu 123



:awk '{print $2 "\t" $3 }' mytest
:awk '{print $2,$3 }' mytest

打印第2个和第3个域
: cat mytest |awk '/ABC/' mytest 
包含ABC的行
: cat mytest |awk '/ABC|abc/' mytest
包含ABC或者abc的行
: awk '/a[rl]/ {print $1, $2}' mytest
打印匹配ar或者al的行的第一个域和第二个域
: cat mytest |awk '/[Aa]/' mytest
包含A或者a的行
: cat mytest |awk '/^123/' mytest
123开头的行
: cat mytest| awk -F '@' ' { print $1 }'  mytest
打印第一个域(@分割)
cat mytest| awk -F ' ' ' /123/ { print $1 }'  mytest

打印包含123的行得第一个域(空格分隔域)
: cat mytest |awk '$1 ~/12/ ' mytest

打印第一个域匹配12的行
cat mytest |awk '$5 ~/ef$/ {print $5}' mytest
对于以ef结尾的第五个域则打印
awk '$1 > 200||$4 > 100' mytest
第一个域大于200 或者第四个域大于100 则打印行







-F '#' (#为域的分隔符),默认空格为分隔符

/正则表达式/

正则表达式中   ^..(..开头)      ..$(..结尾)

~(
匹配)   !~不匹配







结合sort uniq

cat cmgp_access_2009_01_16.log  | awk -F'"' '{ print $14}' | sort | uniq -c          (
排序,并删除重复的行且打印重复次数)
76890   200
18731   206
2       304
25      404
1       500

转载于:https://my.oschina.net/u/1992157/blog/3008641

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值