awk数组
2018-08-23 15:48
99 查看
1.1 wk数组
1. 取出/etc/passwd中uid在1到500之间的用户名和uid号码awk -F: '$3>=1 && $3<500{print $1,$3}' /etc/passwd2. 显示系统最近一分钟 五分钟 十五分钟的负载w |awk -F'[ ,]+' '/load/{print $(NF-2),$(NF-1),$NF}'3. 显示你系统中所有的非虚拟用户的用户名和使用的shell并统计数量awk -F: '/bash$/{i++;print $1,$NF}END{print i}' passwd.txt4. 统计Secure(给大家发送的)文件每个ip地址破解你密码次数显示前十名sort -rnk2#-r 逆序 #-n 按照数字 顺序排序#-k 根据某一列的内容排序[root@oldboy50-01 /server/files]# awk '/Failed/{h[$(NF-3)]++}END{for(i in h) print i,h[] }' secure-20161219|sort -rnk2 |column -t|head218.65.30.25 68652218.65.30.53 34326218.87.109.154 21201112.85.42.103 18065112.85.42.99 17164218.87.109.151 17163218.87.109.150 17163218.65.30.61 17163218.65.30.126 17163218.65.30.124 171635.统计Secure中每个用户破解的次数[root@oldboy50-01 /server/files]# awk '/Failed/{h[$(NF-5)]++}END{for(i in h) print i,h[] }' secure-20161219|sort -rnk2 |column -t|headroot 364610admin 733user 246oracle 119support 104guest 79test 70ubnt 47pi 41webadmin 366.统计access.log中所有流量总和(第10列)[root@oldboyedu50-lnb /server/files]# awk '{sum=sum+$10}END{print sum/1024^3}' access.log2.30828i=i+1 == i++ 统计次数 wc -li=i+$1 == i+=$1 求和 累加 1+2+3...+1001.2 awk中循环与判断
1.2.1 shell编程
判断 if [ ];then xxxxfi1.2.2 awk中的
if(NR==1)print $0if(NR==1) print $0[root@oldboyedu50-lnb /server/files]# awk 'NR==1' reg.txtZhang Dandan 41117397 :250:100:175[root@oldboyedu50-lnb /server/files]# awk '{if(NR==1) print}' reg.txtZhang Dandan 41117397 :250:100:175实例1-1 统计{}中包含oldboy的行行数[root@oldboyedu50-lnb /server/files]# awk '/{/,/}/' range.txt{lidaooldboyalexoldboy oldboy}{lidaooldboyalexoldboy oldboy}{lidaooldboyalexoldboy oldboy}实例1-2 统计{}中包含oldboy的行行数[root@oldboyedu50-lnb /server/files]# awk '/{/,/}/{if(/oldboy/) i++}END{print i}' range.txt61.3 awk循环
1.3.1 shell编程
for((i=1;i<=100;i++))do echo $idone1.3.2 awk
for(i=1;i<=100;i++)命令 awk 'BEGIN{for(i=1;i<=100;i++)sum=sum+i ;print sum}'实例1-3 处理以下文件内容,将域名取出并根据域名进行计数排序处理:(百度和sohu面试题)http://www.etiantian.org/index.htmlhttp://www.etiantian.org/1.htmlhttp://post.etiantian.org/index.htmlhttp://mp3.etiantian.org/index.htmlhttp://www.etiantian.org/3.htmlhttp://post.etiantian.org/2.html1.4 数组
数组名称[元素]数组名称[下标]awk 'BEGIN{ h[110]="laowang";h[120]="tao"; print h[110],h[120],h[12306] }'laowang tao [root@oldboyedu50-lnb /server/files]# awk -F"[/.]+" '/www/{i++}/post/{j++}/mp3/{k++}END{print i,j,k}' url.txt3 2 1实例1-4 awk数组 统计 www post mp3出现的次数[root@oldboyedu50-lnb /server/files]# awk -F"[/.]+" '{h[$2]++}' url.txt[root@oldboyedu50-lnb /server/files]# awk -F"[/.]+" '{h[$2]++;print h["www"]}' url.txt122233 显示www post mp3出现次数 [root@oldboyedu50-lnb /server/files]# awk -F"[/.]+" '{h[$2]++}END{print h["www"],h["post"],h["mp3"]}' url.txt3 2 1 自动显示数组里面的内容 [root@oldboyedu50-lnb /server/files]# awk -F"[/.]+" '{h[$2]++}END{for(i in h) print i }' url.txtwwwmp3post[root@oldboyedu50-lnb /server/files]# awk -F"[/.]+" '{h[$2]++}END{for(i in h) print i,h[i] }' url.txtwww 3mp3 1post 2相关文章推荐
- 在 awk 中怎么使用循环
- awk 入门 —— 强大的文本分析工具
- Java 中初始化数组
- 如何在 Linux / Unix 上使用 awk 打印文件名
- 文本处理工具AWK详解
- 基于php数组中的索引数组和关联数组详解
- php关联数组与索引数组及其显示方法
- PHP重置数组为连续数字索引的几种方式总结
- php合并数组并保留键值的实现方法
- php取出数组单个值的方法
- php把字符串指定字符分割成数组的方法
- PHP实现根据数组某个键值大小进行排序的方法
- PHP实现的数组和XML文件相互转换功能示例
- 7. 队列(2)
- awk的基本概念,基础用法和高级用法
- 2018-4-20 17周3次课 shell函数、数组、告警需求分析
- awk使用的一点体会
- iostat & awk
- awk 使用实例