背景:之前是一个数学妞,所以操作系统类的就由windows系列霸占了,甚至“cmd"是什么东西,环境变量是什么概念......其实说那么多就是想表明一点:你现在很有可能比我知道得多得多呢!

 
介绍awk:
1)awk是什么东西?
awk其实就是一种在linux上的小工具,你可以理解其是一个方便文本处理,或者日志数据处理的插件。
2)awk的基本使用方法及场景
这个部分我觉得我再说什么都不如别人大神说得好,附上链接大伙看看:
http://www.runoob.com/linux/linux-comm-awk.html
其实除去一些基本的知识,总结起来,基本可以写成:
awk (-F,) 'BEGIN{初始变量}{动作}END{输出结果}‘ 引用文件
或者简写成 awk '{print $1,$2}'之类的
3)例子
ll.txt
root     163335   3005  0 May09 ?        00:00:00 sshd: srtest [priv]
srtest   163341 163335  0 May09 ?        00:00:00 sshd: srtest@pts/0
root     164948   3005  0 May09 ?        00:00:00 sshd: srtest [priv]
srtest   164953 164948  0 May09 ?        00:00:00 sshd: srtest@pts/1
root     171321   3005  0 15:20 ?        00:00:00 sshd: srtest [priv]
srtest   171326 171321  0 15:20 ?        00:00:00 sshd: srtest@pts/2
我想在只是想看有多少个?
awk 'BEGIN{count=0;print "the original number is" ,count}{count=count+1}END{print "the rusult number is",count}' ll.txt
除了这个我还想在动作方面加点动作大于170000的才算数;
awk 'BEGIN{count=0;print “first",count }{if($2>170000){count=count+1;}}END{print "last",count}  ll.txt
 
有了这个之后大家对awk基本上了解,但是这个还只是刚刚开始:
下面来个高一点难度的,如果有兴趣可以自己去琢磨,我也是拿到别人写的,发现写得挺好,然后收藏了。
 
awk -F"." -v OFS=',
' '{head[$1"."$2]++;tail[$1"."$2]=$(NF-2)}END{n=0;for(i in head){if(head[i]==tai
l[i]){print "arr["n"]="head[i],i;n++}else{print "arr["n"]="0,i;n++}}}'
 
数据是长这样的:OBRST_20160301.020.0003.0004.A.DAT
目前是看一些分割了的文件,最后数目对不对.0004.A.DAT这个说明是被分成4个,然后0003表示是第三个。
另外看到awk对【key:value】的数据处理棒棒哒。明天我打算用python 将上面这个程序写下。。。。。好嗨森

awk的数组使用经历的更多相关文章

  1. awk操作数组注意几点

    awk的数组跟其他程序设计语言的数组有所不同:1.可以直接在awk中定义数组:2.数组元素的初始值为0或空字符串,除非他们被显示的指定初始化:3.数组可以自动扩展:4.都是关联数组,数字下标也会转成字 ...

  2. shell 之awk 关联数组高级应用

    最近由于数据迁移过,有些用户信息需要再次确认下,也许数据量比较大,但是需要最终确认的比如说是用户ID和其对应的用户积分数,这样就会导致出现文本a(老的数据),文本b(新的数据).比如 这是文本a.tx ...

  3. AWK处理数组

    转自ChinaUnix论坛,感谢作者整理. 在文本处理的工作中,awk的数组是必不可少的工具,在这里,同样以总结经验和教训的方式和大家分享下我的一些学习心得,如有错误的地方,请大家指正和补充. awk ...

  4. shell编程系列21--文本处理三剑客之awk中数组的用法及模拟生产环境数据统计

    shell编程系列21--文本处理三剑客之awk中数组的用法及模拟生产环境数据统计 shell中的数组的用法: shell数组中的下标是从0开始的 array=("Allen" & ...

  5. linux中利用awk对数组进行排序

    数组 在排序前需要对数组有所了解,数组是用于存储一系列值得变量,这些值之间通常是由联系的,可通过索引来访问数组的值,索引需要用括号括起来,基本格式如下: array[index]=value awk数 ...

  6. awk结合数组统计

    1.统计用户登录类型 #!/bin/bashdeclare -A  shells (定义关联数组shells)while read ll   (读取/etc/passwd,ll为变量) dotype= ...

  7. 【译】 AWK教程指南 5AWK中的数组

    awk程序中允许使用字符串当做数组的下标(index).利用这个特色十分有助于资料统计工作.(使用字符串当下标的数组称为Associative Array) 首先建立一个数据文件,并取名为 reg.d ...

  8. 【转】awk数组操作

    转自:http://blog.csdn.net/wangran51/article/details/9168361 用awk进行文本处理,少不了就是它的数组处理.那么awk数组有那些特点,一般常见运算 ...

  9. 【转】awk 数组用法【精华贴】

    文本处理的工作中,awk的数组是必不可少的工具,在这里,同样以总结经验和教训的方式和大家分享下我的一些学习心得,如有错误的地方,请大家指正和补充. awk的数组,一种关联数组(Associative ...

随机推荐

  1. Linux启动过程详解

    Linux启动过程详解 附上两张图,加深记忆 图1: 图2: 第一张图比较简洁明了,下面对第一张图的步骤进行详解: 加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的 ...

  2. LRU算法

    LRU,Least recently used[最近最少使用算法],该算法[或变种]被广泛用于缓存管理中,其设计思想是基于:经常被访问的数据在未来一段时间也会被访问,最近最少被访问的数据在未来一段时间 ...

  3. 51nod1073(约瑟夫环)

    题目链接: http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1073 题意: 中文题诶~ 思路: 直接模拟的话O(n*k)的 ...

  4. xml schema xmlns xmlns:xsi xsi:schemaLocation targetnamespace

    先上一段xml文档 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="htt ...

  5. Thinkphp5简单初体验

    <?php namespace app\index\controller; use think\Controller; //引用think/Controller类 class Index ext ...

  6. 在这个看脸的世界,该如何优雅的创建JS对象

    Javascript是一门解释型的语言,是基于对象的,严格来说并不怎么符合的面向对象的标准,显著的特点就是函数就是“一等对象”,与传统的面向对象语言不同的时,Javascript有“一千种”方法来创建 ...

  7. Angular2表格/可排序/table

    Angular2表格 1. 官网下载Angular2开发环境,以及给出的quickstart代码示例demo(地址如下),具体步骤不在详述. https://github.com/angular/qu ...

  8. js实现复制到剪贴板功能,兼容所有浏览器

    http://www.cnblogs.com/PeunZhang/p/3324727.html https://github.com/zeroclipboard/ZeroClipboard 复制链接到 ...

  9. .NET简谈接口

    自从面向对象开发方式的出现,抽象的概念就开始日新月异的发展,面向对象编程.面向接口编程.面向组件编程等等:这一系列的概念都是软件工程所追求的思想范畴,高类聚低耦合. 今天我要简谈的是面向对象里面非常重 ...

  10. CentOS上安装man手册

    我的CentOS采用的是minimal方式安装的,学会遇到命令找不到的问题.今天我遇到的是,查找命令相关的man手册时,显示:通过查看CentOS iso, 我发现了man-pages这个rpm包.装 ...