百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>服务器> linux下Awk简单过滤示例
分享文章到:

linux下Awk简单过滤示例

发布时间:01/15 来源: 浏览: 关键词:
Awk命令是linux系统中的文本处理命令了我们这里一起来看看关于linux下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}

I. 示例:

简单的记录了awk条件过滤和赋值变量来进行判断的过滤实例

[root@LinuxEA awk]# cat test1

3       aa bb
4       ss gg
1       ssyyu
6       ddf
8       ff hh
7       aa bb
9       fff

[root@LinuxEA awk]#

如上所示,现在需要拿出以aa bb的行,也就是3和7(test1的中间空白为tab)

II. 1,直接过滤

转载时须注明出处及本声明

直接过滤aa bb而后打印

[root@LinuxEA awk]# awk '/aa bb/ {print $1}' test1
3
7
III. 2,赋值判断

[root@LinuxEA awk]# var1="aa bb"

[root@LinuxEA awk]# awk -F\\t -v val="$var1" '{if($2==val)print $1}' test1
3
7
首先赋值var1变量,而后将var1赋给val,在判断$2是否等于val(也就是var1),如果等于就打印出结果

这里的$var1是需要双引号引起来的

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有3人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板