awk最常用以及面试基本都会被问到的实例:

A.统计日志中每个URL被访问的次数

cat access.log
http://www.etiantian.org/1.html
http://post.etiantian.org/1.html
http://edu.etiantian.org/1.html
http://post.etiantian.org/1.html
http://www.etiantian.org/1.html
http://edu.etiantian.org/1.html
http://www.etiantian.org/1.html awk -F '[/]+' '{print $2}' access.log|sort|uniq -c|sort -r
3 www.etiantian.org
2 post.etiantian.org
2 edu.etiantian.org

B.企业最常用的日志分析语句

awk '{print $1}' access_time.log|sort|uniq -c|sort -rn|head
awk '{A[$1]++}END{ for(i in A) {print A[i],i} }' access_time.log|sort|uniq -c|sort -rn|head

C.企业最常用TCP连接数分析语句

netstat -tunla | awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -nr
netstat -tunla | awk '/^tcp/ {A[$NF]++} END{ for(i in A) {print A[i],i} }'|sort -rn
# 统计ESTABLISHED连接数
netstat -pnta 2>&1|grep 'ESTABLISHED'|awk '{print $5}' | awk -F : '{a[$1]++}END{for(i in a){print i,a[i]}}'
204
127.0.0.1 202
172.16.8.9 2
# 统计tcp的各个状态及数量:
netstat -anpt 2>&1|awk '/^tcp/{a[$6]++}END{for(i in a){print i,a[i]}}'
SYN_SENT 1
ESTABLISHED 408
LISTEN 40

D.服务器流量暴涨的原因

a.所有服务器流量都上涨,有可能遭到了DDOS攻击;

b.某几台服务器流量上涨,有可能被入侵,中毒了,大量外发流量;

c.网站元素(如图片)被盗链,在门户页面被推广导致大量流量产生,可以压缩文件大小;

d.爬虫抓网站数据;

e.购买了CND业务,CDN猛抓源站.

分析日志,输出格式如下:
# [访问次数*单个文件大小] [访问次数] [文件名] 第一个参数也就是文件所占总流量
惯性思维法:
awk '{print $7"\t" $10}' access_time.log|sort|uniq -c|awk '{print $1*$3,$1,$2}'|sort -rn|head # 数组法,也称装逼法:
awk '{a_num[$7]++;a_size[$7]=a_size[$7]+$10} END{for(k in a_num) {print a_size[k],a_num[k],k} }' access_time.log
两个数组的键是相同的,都是文件名,a_num对应的值是访问次数,a_size对应的值是文件大小.

E.练习,统计所有键的总和

cat wenben.txt
a 1
b 3
c 2
d 7
b 5
a 3
g 2
f 6
d 9 awk '{ A[$1]=A[$1]+$2 } END{ for(i in A) {print i,A[i]} }' wenben.txt
awk '{ A[$1]+=$2 } END{ for(i in A) {print i,A[i]} }' wenben.txt
a 4
b 8
c 2
d 16
f 6
g 2

awk在企业中最常用的语句的更多相关文章

  1. php中一些常用的语句收集

    清空数据表   truncate 表名; http://blog.knowsky.com/234205.htm    常用的SQL语句实例 http://blog.csdn.net/vericlong ...

  2. ios中常见数据存储方式以及SQLite常用的语句

    在iOS中,根据不同的需求对应的有多种数据存储方式: 1.NSUserdefaults  将数据存储到沙盒中(library),方便易用,但是只能存储系统提供的数据类型(plist),不能存储自定义的 ...

  3. mysql中常用的语句整理

    mysql中常用的语句: 1:创建带自增长的主键的表 DROP TABLE IF EXISTS user_login ; CREATE TABLE user_login (   user_id INT ...

  4. Lua中的常用语句结构以及函数

     1.Lua中的常用语句结构介绍 --if 语句结构,如下实例: gTable = {} ] ] then ]) == gTable[] then ]) else print("unkown ...

  5. postgresql中进行备份和回滚的常用sql语句小结

    最近在项目中需要对已有的部分数据库数据进行备份,通过搜索和实践,把常用的sql以及过程记录如下, 1.常用的备份数据库思路,把需要备份的数据放到一个新表中,这个新表的记录与需要备份的表完全一样,然后备 ...

  6. 常用SQL语句及在node中使用MySQL

    摘要:一些重要的SQL命令 SELECT - 从数据库中提取数据 UPDATE - 更新数据库中的数据 DELETE - 从数据库中删除数据 INSERT INTO - 向数据库中插入新数据 CREA ...

  7. 经典MSSQL语句大全和常用SQL语句命令的作用

    下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL类型包括数据库.表的创建,修改,删除,声明—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML类 ...

  8. Mysql 常用 SQL 语句集锦

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  9. Flume_企业中日志处理

    企业中的日志存放_1 201611/20161112.log.tmp 第二天文件变为20161112.log与20161113.log.tmp 拷贝一份flume-conf.properties.te ...

随机推荐

  1. spring事务(Transaction )报 marked as rollback-only异常的原因及解决方法

    很多朋友在使用spring+hibernate或mybatis等框架时经常遇到报Transaction rolled back because it has been marked as rollba ...

  2. usb hub 设备流程图

    在此处负责而来:http://blog.csdn.net/xuelin273/article/details/38646851  下面的转载于:http://blog.csdn.net/qianguo ...

  3. LeetCode(289)Game of Life

    题目 According to the Wikipedia's article: "The Game of Life, also known simply as Life, is a cel ...

  4. 2018 Multi-University Training Contest 1 Distinct Values(set)

    题意: t组数据,每组数据给定n,m, 表示有m个约束,每个约束包含 x,y ,代表区间 [x, y] 里的数字不能相同. 让你用所有的正整数构成一个长度为 n 的区间,使得这个区间元素顺序的字典序最 ...

  5. HDU:2586-How far away

    How far away Time limit1000 ms Memory limit32768 kB Problem Description There are n houses in the vi ...

  6. python基础学习笔记——类的约束

    ⾸先, 你要清楚. 约束是对类的约束. 用一个例子说话: 公司让小明给他们的网站完善一个支付功能,小明写了两个类,如下: class QQpay: def pay(self,money): print ...

  7. Linux中 find 常见用法示例

    Linux中find常见用法示例 #find path -option [ -print ] [ -exec -ok command ] {} \; #-print 将查找到的文件输出到标准输出 #- ...

  8. python中os和sys模块

    os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口;sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境. os 常用方法 os.rem ...

  9. SDOJ 2605 闲荡

    描述 L 饭后无聊,便在 BugTown 里闲荡. BugTown 共有 N 栋房屋和 M 条有向道路.每栋房屋都有一个非负整数 vi 作为标识. BugTown 有一个特性十分神奇:从任意一个房屋离 ...

  10. 关于EF调用存储过程那点事...

    最近研究了下EF怎么调用 数据库的分页存储过程,发现还是很不错的 1.数据库存储过程如下,一个简单的不含条件判断的 2.然后新建数据模型中选择存储过程: : 3.EF会自动生存一个返回复杂类型(Obj ...