awk 文本处理工具】的更多相关文章

AWK文本处理工具(Linux) PS:刚开始实习,就给了个处理百万级别数据的任务,以前学过SHELL的一些东西sed/awk之类的处理,但是也没有具体的应用,只是在10几行10几列的小数据操作过,所以要从新学习下,并应用在实际工作中.你可以用excel编辑还好,保存就卡死你! 什么是AWK awk是什么?与其它大多数UNIX命令不同的是,从名字上看,我们不可能知道awk的功能,因为awk是三个人名的缩写,他们是:Aho.(Peter)Weinberg和(Brain)Kernighan.正是这三…
awk: 强大的文本处理工具,擅长对日志文件进行分析: 不仅用于Linux,也是任何环境中现在的功能最强大的数据处理引擎: 语法说明: awk '{pattern + action}' {filenames} pattern:指在数据中要查找的内容: action:指要操作的指令. {}可以对一系列指令进行分组,不一定要出现.pattern要表达的正则表达式要用斜杠括起来. 通常,awk是以文件的一行为处理单位,每接收一行就执行相应的命令. 三种调用方法: 命令行: awk [-F field-…
AWK AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一:awk经过改进生成的新的版本nawk,gawk,现在默认linux系统下日常使用的是gawk,用命令可以查看正在应用的awk的来源(ls -l /bin/awk ). AWK 常见参数 # 默认是执行打印全部 print $0 # 1为真 打印$0 # 0为假 不打印 -F # 改变FS值(分隔符) ~ # 域匹配 == # 变量匹配 !~ # 匹配不包含 = # 赋值 != # 不等于 +=…
AWK是一种处理文本文件的语言,是一个强大的文本分析工具.Linux环境中自带. awk调用方法 命令行 awk [-F field-separator] 'commands' input-file(s) shell脚本方式 #!/bin/sh awk脚本方式 `#!/bin/awk awk -f 脚本文件 待处理文件…
Usage:awk [option] 'program' file ... awk [option] -f progfile file ... [optin]: -F fs 指定输入分隔符,fs可是字符串或者正则表达式: -v var=value 赋值给var,将外部变量传给awk: -f script 从外部脚本读取awk命令: awk 'BEGIN{ print start }pattern{ commands }END{ print end }' file,一个program应有BEGIN…
查看多少行 ? awk '{print NR}' access.log |tail -n1 日期时间筛选检测 awk '/Dec 10/ {print $0}' /opt/mongod/log/mongod.log 具体时间点 日志检测 awk '/Nov 11 16:24:17/ {print $0}' /var/log/secure nginx日志统计独立ip的个数 awk '{print $1}' /access.log | sort | uniq | wc -l 查询访问最多的前10个i…
awk 线上处理常用模式 awk 处理复杂日志 6.19: DHB_014_号百总机服务业务日报:广州 到达数异常! DHB_023_号百漏话提醒日报:珠海 到达数异常! 6.20: DHB_014_号百总机服务业务日报:广州 到达数异常!到 awk -F '[_ :]+' 'NF>2{print $4,$1"_"$2,b |"sort";next}{b=$1}' # 当前行NF小于等于2 只针对{print $,$,b |} 仍然执行 # 当前行NF大于2…
awk 常用示例 获取本机 IP 方式 /sbin/ifconfig |awk -v RS="Bcast:" '{print $NF}'|awk -F: '/addr/{print $2}' # 直接获取当前 IP 地址 /sbin/ifconfig |awk '/inet/&&$2!~"127.0.0.1"{split($2,a,":");print a[2]}' # 也是 直接获取当前 IP 地址 /sbin/ifconfig…
AWK 文件打印匹配 格式示例 awk '/Tom/' file # 打印匹配到得行 awk '/^Tom/{print $1}' # 匹配Tom开头的行 打印第一个字段 awk '$1 !~ /ly$/' # 显示所有第一个字段不是以ly结尾的行 awk '$3 <40' # 如果第三个字段值小于40才打印 awk '$4==90{print $5}' # 取出第四列等于90的第五列 awk '/^(no|so)/' test # 打印所有以模式no或so开头的行 awk '$3 * $4 >…
AWK help document:http://www.gnu.org/software/gawk/manual/gawk.html 问题 awk命令 备注 对请求IP统计分组排序?     显示列头 cat /etc/passwd |awk -F':' 'BEGIN {print "name,shell"} {print $1","$7} END {print "blue,/bin/nosh"}'   查询指定IP的所有行? awk '/14…