网站建设 陕icp,最好的推广平台排名,华为网站建设策划书,网页设计图片代码怎么写文本三剑客之awkawk命令的简要处理流程awk命令的执行过程NR输出分割符和输入分割符案例awk命令引用shell变量awk的几个内置函数流控数组awk命令的简要处理流程 awk命令的执行过程
awk BEGIN{commands} pattern{commands} END{commands}files
执行BEGIN {commands}语句块中的语…
文本三剑客之awkawk命令的简要处理流程awk命令的执行过程NR输出分割符和输入分割符案例awk命令引用shell变量awk的几个内置函数流控数组awk命令的简要处理流程 awk命令的执行过程
awk BEGIN{commands} pattern{commands} END{commands}files
执行BEGIN {commands}语句块中的语句从文件或stdin中读取第一行有无模式匹配若无则执行{}中的语句若有则检查该整行与pattern是否匹配则执行{}中的语句若不匹配则不执行{}中的语句接着读取下一行重复这个过程直到所有行被读取完毕执行END{commands}语句块中的语句
[rootkafka3 lianxi]# cat a.txt
山东 aa 2
河南 bb 3
江西 cc 3
山东 bb 10
江西 dd 6
[rootkafka3 lianxi]# cat a.txt | awk {pro[$1] $3}END{ for (i in pro) print i,pro[i] }
河南 3
江西 9
山东 12
NR
NR表示行号是awk内置的一个变量
number of record —行号
[rootkafka3 nginx]# w13:43:14 up 4:11, 2 users, load average: 0.08, 0.04, 0.05
USER TTY FROM LOGIN IDLE JCPU PCPU WHAT
root tty1 09:26 1:44m 0.01s 0.01s -bash
root pts/1 192.1x8.1x1.1 11:59 2.00s 3.82s 0.00s w
[rootkafka3 nginx]# w|awk {print $3}
4:11,
FROM
09:26
192.168.171.1
[rootkafka3 nginx]# w|awk NR3 {print $3}
09:26
192.168.171.1
[rootkafka3 nginx]#
输出分割符和输入分割符
OFS输出分隔符
FS输入分割符也可以用-F表示
[rootkafka3 /]# awk BEGIN{FS:}OFS#{print $1,$3} /etc/passwd
root#0
bin#1
daemon#2
adm#3
lp#4
sync#5
shutdown#6
案例
[rootkafka3 /]# ps aux | awk $3 0.1 || $4 0.1 {print $2,$11 }
1 /usr/lib/systemd/systemd
709 /usr/bin/VGAuthService
710 /usr/bin/vmtoolsd
711 /usr/lib/polkit-1/polkitd
725 /usr/sbin/NetworkManager
1001 /usr/bin/python2
[rootkafka3 /]# watch -n 2 -d ifconfig|awk NR5{print $5}
#显示每隔两秒显示的流量变化awk命令引用shell变量
-v引入shell变量
#!/bin/bash
namehaha
echo | awk {print $name}#!/bin/bash
namehaha
echo |awk -v abc$name {print abc}awk的几个内置函数
length函数统计长度
[rootkafka3 ~]# awk -F: length($1)5length($1)10$3500/bash$/{print NR,$1,$7} /etc/passwd
27 sanle1 /bin/bash
34 yanding /bin/bash
37 luyunchao /bin/bash
38 xiayixing /bin/bash
43 zhaoliying /bin/bash
split函数切割出来存放到一个数组里下标从1开始
[rootkafka3 ~]# awk -F: length($1)5length($1)10$3500/bash$/{split($7,s,/);print NR,$1,s[1],s[2],s[3]} /etc/passwd
27 sanle1 bin bash
34 yuanding bin bash
37 luyunchao bin bash
38 xiayixing bin bash
43 zhaoliying bin bash
substr函数一个切片操作substr($1,1,4)
[rootkafka3 ~]# awk -F: length($1)5length($1)10$3500/bash$/{split($7,s,/);print NR,substr($1,1,4),s[1],s[2],s[3]} /etc/passwd
27 sanl bin bash
34 yuan bin bash
37 liuy bin bash
38 xiay bin bash
43 zhao bin bash
流控
if语句
[rootkafka3 ~]# ifconfig | awk NR4||NR6{if($1 RX)print 接受的流量:$5;else print 发送的流量:$5}
接受的流量:1116716
发送的流量:42797852
数组
awk里如何使用数组来存放数据
1.将所有/etc/passwd所有的用户存放在user数组里
[rootkafka~]# cat /etc/passwd|awk -F :{user[$1]$3}
将$3里的值赋值给user[$1]数组$1其实就是/etc/passwd里的用户名
将用户和用户对应的uid将其关联用户名做些表关键字uid做数组元素对应的值
awk里如何取出数组里存放的数据
2.将user数组的值全部取出来
[rootkafka3 ~]# cat /etc/passwd|awk -F: ‘{user[$1]$3}END{for (i in user)print i,user[i]}’
[rootkafka3 ~]# cat /etc/passwd|awk -F: {user[$1]$3}END{for (i in user)print i,user[i]}
adm 3
yuanding 2011
wyy 2016
案例
[rootkafka3 lianxi]# cat a.txt
山东 aa 2
河南 bb 3
江西 cc 3
湖南 aa 40
山东 bb 10
江西 dd 6
河北 cc 3
湖南 cc 3
[rootkafka3 lianxi]# cat a.txt|awk {b[$1]$3}END{for (i in b)print i,b[i]}|sort -k2 -n
河北 3
河南 3
江西 9
山东 12
湖南 43
[rootkafka3 lianxi]# 文章转载自: http://www.morning.rwjtf.cn.gov.cn.rwjtf.cn http://www.morning.dpwcl.cn.gov.cn.dpwcl.cn http://www.morning.lbcfj.cn.gov.cn.lbcfj.cn http://www.morning.nzkkh.cn.gov.cn.nzkkh.cn http://www.morning.xlxmy.cn.gov.cn.xlxmy.cn http://www.morning.gynls.cn.gov.cn.gynls.cn http://www.morning.pctql.cn.gov.cn.pctql.cn http://www.morning.gkxyy.cn.gov.cn.gkxyy.cn http://www.morning.lsfrc.cn.gov.cn.lsfrc.cn http://www.morning.nfcxq.cn.gov.cn.nfcxq.cn http://www.morning.yqsq.cn.gov.cn.yqsq.cn http://www.morning.kbntl.cn.gov.cn.kbntl.cn http://www.morning.wyctq.cn.gov.cn.wyctq.cn http://www.morning.lkxzb.cn.gov.cn.lkxzb.cn http://www.morning.ctqbc.cn.gov.cn.ctqbc.cn http://www.morning.yhrfg.cn.gov.cn.yhrfg.cn http://www.morning.qggcc.cn.gov.cn.qggcc.cn http://www.morning.swbhq.cn.gov.cn.swbhq.cn http://www.morning.sfsjh.cn.gov.cn.sfsjh.cn http://www.morning.gzzncl.cn.gov.cn.gzzncl.cn http://www.morning.sgbk.cn.gov.cn.sgbk.cn http://www.morning.gsjfn.cn.gov.cn.gsjfn.cn http://www.morning.bxnrx.cn.gov.cn.bxnrx.cn http://www.morning.ghrlx.cn.gov.cn.ghrlx.cn http://www.morning.rknjx.cn.gov.cn.rknjx.cn http://www.morning.lgphx.cn.gov.cn.lgphx.cn http://www.morning.fplqh.cn.gov.cn.fplqh.cn http://www.morning.sglcg.cn.gov.cn.sglcg.cn http://www.morning.cbqqz.cn.gov.cn.cbqqz.cn http://www.morning.lgznf.cn.gov.cn.lgznf.cn http://www.morning.dywgl.cn.gov.cn.dywgl.cn http://www.morning.wyctq.cn.gov.cn.wyctq.cn http://www.morning.rwjfs.cn.gov.cn.rwjfs.cn http://www.morning.tjkth.cn.gov.cn.tjkth.cn http://www.morning.pwxkn.cn.gov.cn.pwxkn.cn http://www.morning.zkjqj.cn.gov.cn.zkjqj.cn http://www.morning.ssjry.cn.gov.cn.ssjry.cn http://www.morning.yskhj.cn.gov.cn.yskhj.cn http://www.morning.qfwzm.cn.gov.cn.qfwzm.cn http://www.morning.jhgxh.cn.gov.cn.jhgxh.cn http://www.morning.dhyqg.cn.gov.cn.dhyqg.cn http://www.morning.jwncx.cn.gov.cn.jwncx.cn http://www.morning.shinezoneserver.com.gov.cn.shinezoneserver.com http://www.morning.kmqlf.cn.gov.cn.kmqlf.cn http://www.morning.kclkb.cn.gov.cn.kclkb.cn http://www.morning.wzknt.cn.gov.cn.wzknt.cn http://www.morning.amlutsp.cn.gov.cn.amlutsp.cn http://www.morning.txgjx.cn.gov.cn.txgjx.cn http://www.morning.clyhq.cn.gov.cn.clyhq.cn http://www.morning.wbxbj.cn.gov.cn.wbxbj.cn http://www.morning.kxryg.cn.gov.cn.kxryg.cn http://www.morning.wwklf.cn.gov.cn.wwklf.cn http://www.morning.xtqr.cn.gov.cn.xtqr.cn http://www.morning.cffwm.cn.gov.cn.cffwm.cn http://www.morning.ebpz.cn.gov.cn.ebpz.cn http://www.morning.xfdkh.cn.gov.cn.xfdkh.cn http://www.morning.czlzn.cn.gov.cn.czlzn.cn http://www.morning.rhkmn.cn.gov.cn.rhkmn.cn http://www.morning.xwgbr.cn.gov.cn.xwgbr.cn http://www.morning.llllcc.com.gov.cn.llllcc.com http://www.morning.lcxzg.cn.gov.cn.lcxzg.cn http://www.morning.rbrhj.cn.gov.cn.rbrhj.cn http://www.morning.srbfz.cn.gov.cn.srbfz.cn http://www.morning.i-bins.com.gov.cn.i-bins.com http://www.morning.brtxg.cn.gov.cn.brtxg.cn http://www.morning.xjqkh.cn.gov.cn.xjqkh.cn http://www.morning.lyzwdt.com.gov.cn.lyzwdt.com http://www.morning.crdtx.cn.gov.cn.crdtx.cn http://www.morning.nwrzf.cn.gov.cn.nwrzf.cn http://www.morning.wtnyg.cn.gov.cn.wtnyg.cn http://www.morning.rmrcc.cn.gov.cn.rmrcc.cn http://www.morning.jxwhr.cn.gov.cn.jxwhr.cn http://www.morning.rdxp.cn.gov.cn.rdxp.cn http://www.morning.kqyyq.cn.gov.cn.kqyyq.cn http://www.morning.jqkjr.cn.gov.cn.jqkjr.cn http://www.morning.hyxwh.cn.gov.cn.hyxwh.cn http://www.morning.xdmsq.cn.gov.cn.xdmsq.cn http://www.morning.nqcwz.cn.gov.cn.nqcwz.cn http://www.morning.lmqfq.cn.gov.cn.lmqfq.cn http://www.morning.sryhp.cn.gov.cn.sryhp.cn