文本处理三剑客之 awk

栏目: 服务器 · 发布时间: 7年前

内容简介:在 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

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

探索需求

探索需求

章柏幸、王媛媛、谢攀、杰拉尔德・温伯格、唐纳德・高斯 / 章柏幸、王媛媛、谢攀 / 清华大学出版社 / 2004-7-1 / 39.00元

本书将与您一起寻找"什么是客户真正想要的"这一问题的答案。 本书着眼于系统设计之前的需求过程,它是整个开发过程(如何设计人们想要的产品和系统)中最有挑战性的那部分。通过对一些需求分析中的常见误区和问题的分析和讨论,从和客户沟通开始,深入研究一些可能的需求,澄清用户和开发者期望值,最终给出了能够大幅度提高项目成功几率的一些建议方法。 本书由该领域内公认的两位作者合著,搜集了他们在大大小小......一起来看看 《探索需求》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试