背景:之前是一个数学妞,所以操作系统类的就由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. error LNK2019:unresolved external symbol

    error LNK2019:unresolved external symbol 这个错误是指程序不认识函数.具体的说就是.h文件中定义并没有实现,这就是库出现了问题. 遇到这个问题,第一步就要看是哪 ...

  2. eclipse远程连接hive

    创建项目,添加jar包,hive的s上,所以也需要hadoop的一些jar 这个图片是从网上找的,我直接使用的以前hadoop的项目   创建测试类,写测试代码 //获取jdbc链接 private ...

  3. javaScript的call关键字

    function add(a, b) { alert(a + b); } function sub(a, b) { alert(a - b); } add.call(sub,3,1); //这个例子中 ...

  4. 《图形学》实验七:中点Bresenham算法画椭圆

    开发环境: VC++6.0,OpenGL 实验内容: 使用中点Bresenham算法画椭圆. 实验结果: 代码: #include <gl/glut.h> #define WIDTH 50 ...

  5. ThinkPHP 表单提交操作成功后执行JS操作如何刷新父页面或关闭当前页等操作

    ThinkPHP 表单提交操作成功后执行JS操作如何刷新父页面或关闭当前页等操作 .操作成功后刷新父页面 $this->assign('jumpUrl', "javascript:wi ...

  6. Apache, Tomcat, JK Configuration Example

    Example of worker.properties: worker.list=myWorker,yourWorker worker.myWorker.port=7505 worker.myWor ...

  7. SpringMVC注解@RequestMapping全面解析---打酱油的日子

    @RequestMapping 可以出现在类级别上,也可以出现在方法上.如果出现在类级别上,那请求的 url 为 类级别上的@RequestMapping + 方法级别上的 @RequestMappi ...

  8. php 小函数

    1 变量函数 a.is_xxx函数用来判断变量类型 is_numeric  (PHP 4, PHP 5) — 检测变量是否为数字或数字字符串 is_int.is_integer.is_long,判断变 ...

  9. requirejs 多页面,多js 打包代码,requirejs多对多打包【收藏】

    这段代码来自 http://stackoverflow.com/questions/20583812/grunt-requirejs-optimizer-for-a-multi-app-project ...

  10. NOIP2014 uoj20解方程 数论(同余)

    又是数论题 Q&A Q:你TM做数论上瘾了吗 A:没办法我数论太差了,得多练(shui)啊 题意 题目描述 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, ...