码迷,mamicode.com
首页 > 系统相关 > 详细

linux基础--awk文本分析工具详解

时间:2016-12-27 01:28:58      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:awk   文本分析   

简介

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。

awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。


使用方法

awk ‘{pattern + action}‘ {filenames}

尽管操作可能会很复杂,但语法总是这样,其中 pattern 表示 AWK 在数据中查找的内容,而 action 是在找到匹配内容时所执行的一系列命令。花括号({})不需要在程序中始终出现,但它们用于根据特定的模式对一系列指令进行分组。 pattern就是要表示的正则表达式,用斜杠括起来。


示例

#输出df第一个字段
[root@localhost ~]# df -Ph |awk ‘{print $1}‘
#输出df第一个和第三个字段
[root@localhost ~]# df -Ph |awk ‘{print $1,$3}‘
#输出df最后一个字段
[root@localhost ~]# df -Ph |awk ‘{print $NF}‘
#输出/var/log/messages中以:分割的最后一个字段
[root@localhost ~]# awk -F ‘:‘ ‘{print $NF}‘ /var/log/messages


本文出自 “亮公子” 博客,请务必保留此出处http://iyull.blog.51cto.com/4664834/1886353

linux基础--awk文本分析工具详解

标签:awk   文本分析   

原文地址:http://iyull.blog.51cto.com/4664834/1886353

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!