内容简介:在 linux 或 *nix 中 awk 、sed、grep 统称为文本处理三剑客。awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。
在 linux 或 *nix 中 awk 、sed、grep 统称为文本处理三剑客。
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 其实是 gawk 的一个连接
[root@OpenStack ~]# which awk /bin/awk [root@OpenStack ~]# cd /bin/ [root@OpenStack bin]# ll awk lrwxrwxrwx. 1 root root 4 3月 14 19:39 awk -> gawk
用法
awk [options] 'program' {filenames}
program格式:’{pattern + action}’ 语句之间用分号分割
选项:
-F 指明输入时用到的字段分隔符
-v 用于实现自定义变量,格式:var=value
##awk 的实现方式
awk 会把需要处理的文本进行切片,切割成片段后 可以使用$1-$n 的方式来显示切割后的行,第一行为$1,第二行为$2,以此类推,全文输入则使用$0,此外,处理完毕后,我们还可以加入条件判断,总的来说 awk 其实也是一门编程语言。
1.打印第一行
[root@OpenStack bin]# awk '{print $1}' /etc/fstab
我们可以使用 print 输出某行,格式是print item1,item2,…
2.打印多行
[root@OpenStack bin]# awk '{print $1,$3}' /etc/passwd
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 文本三剑客之AWK
- 监控三剑客之Nagios
- Linux三剑客之awk详解
- 监控三剑客<cacti、nagios、zabbix>
- 安卓AOP三剑客:APT,AspectJ,Javassist
- 容器技术|Docker三剑客之docker-swarm
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Web开发敏捷之道
Sam Ruby、Dave Thomas、David Heineme Hansson / 慕尼黑Isar工作组、骆古道 / 机械工业出版社 / 2012-3-15 / 59.00元
本书第1版曾荣获Jolt大奖“最佳技术图书”奖。在前3版的内容架构基础上,第4版增加了关于Rails中新特性和最佳实践的内容。本书从逐步创建一个真正的应用程序开始,然后介绍Rails的内置功能。全书分为3部分,第一部分介绍Rails的安装、应用程序验证、Rails框架的体系结构,以及Ruby语言的知识;第二部分用迭代方式创建应用程序,然后依据敏捷开发模式搭建测试案例,最终用Capistrano完成......一起来看看 《Web开发敏捷之道》 这本书的介绍吧!