---===AWK学习之旅===---
一行命令:
1.打印输入每行的字段总数:
最后一行的字段总数:END{print NF}
每行都显示字段总数: {print NF}
 
2.打印指定行:
awk 'NR==3' emp.txt
 
3.打印每行的最后一列:
awk '{print $NF}' emp.txt
 
4.  打印最后一行最后一列:
awk 'END{print $NF}' emp.txt
awk '{field = $NF} END {print $field}' emp.txt 
 
5.打印字段数量大于4的所有行
awk 'NF > 4' emp.txt
 
6.打印出每行最后一个字段值>4
awk '$NF>4' emp.txt
 
7. 打印出所有字段数量
awk '{nf = nf + NF}END{print nf}' emp.txt
 
8.打印含有某关键字的行总数:
awk '/Mary/{lines = lines + 1}END{print lines}' emp.txt  
 
9.打印出第一个字段最大的行:
 awk '$1 > maxfield{maxfield = $1;maxline = $0}{print maxfield,maxline}' emp.txt
 
10.最少有一个字段,空行不打印
awk 'NF>0' emp.txt
 
11.打印每行字段的总数及每行内容:
awk '{print NF,$0}' emp.txt
 
12.打印每行字符总数大于12
awk 'length($0)>12' emp.txt
 
13.打印每行指定字段
awk '{print $2,$1}' emp.txt
 
14.交换两个字段的顺序,并打印所有行:
awk '{temp = $1;$1 = $2; $2 = temp;print}' emp.txt
 
15.第一列被行号替换,并打印所有行:
 awk '{$1 = NR;print }' emp.txt
 
16.删掉第二列,并打印所有
awk '{$2 = "";print }' emp.txt
 
17. 翻转行字段的顺序,并打印
awk '{for(i=NF;i>0;i=i-1) printf("%s ",$i); printf("\n")}' emp.txt
 
18.打印每行数字字段累加和:sum
[root@monitor awkdir]# awk '{for (i=1;i<=NF;i=i+1) sum = sum + $i ;print sum}' emp.txt
4
7.75
21.75
46.75
74.25
96.5
 
19.打印所有行中数字字段相加的和:sum
[root@monitor awkdir]# awk '{for (i=1;i<=NF;i=i+1) sum = sum + $i}END{print sum}' emp.txt
96.5
 
20.打印每行值:绝对值
awk '{for (i=1;i<=NF;i=i+1) if($i<0) $i=-$i;print}' emp.txt

awk二十问-【AWK学习之旅】的更多相关文章

  1. 上位机面试必备——TCP通信灵魂二十问【下】

    上篇文章跟大家介绍了TCP通信常见的前10个面试题,没看过的小伙伴可以点击下方链接进行查看: 上位机面试必备——TCP通信灵魂二十问[上] 今天就后面的10个面试题接着做下说明:欢迎关注[dotNet ...

  2. <转>二十问全链路压测干货汇总(上)

    本文转载自:微信公众号-数列科技<二十问全链路压测干货汇总(上)> 最近几年全链路压测无疑成为了一个热门话题,在各个技术峰会上都可以看到它的身影. 一些大型的互联网公司,比如阿里巴巴.京东 ...

  3. GUI学习之二十九—QFileDialog学习总结

    今天学习的是文件对话框——QFileDialog 一.描述 QFileDialog提供了一个对话框,允许用户选择文件或者目录,也允许用户遍历文件系统,用以选择一个或多个文件或者目录. QFileDia ...

  4. GUI学习之二十五——QFontDialog学习总结

    今天学习字体对话框——QFontDialog()控件. QFontDialog()是继承自QDialog()的一个子类,用来选择给定的字体(包括字体.字号.样式等) 一.构造函数 QFontDialo ...

  5. GUI学习之二十四——QDialog学习总结

    今天学习对话框输入控件的基类(QDialog). 一.描述 是对话类窗口(字体框.颜色选择.文件选择框等)的基类. 对话框窗口是顶级窗口(就是说不包含于哪个父类的显示界面里),主要用于短期任务和与用户 ...

  6. 上位机面试必备——TCP通信灵魂二十问【上】

    关注公众号获取更多干货 TCP通信协议应该是上位机开发中应用最广泛的协议,无论是西门子S7协议.三菱MC协议或者是欧姆龙的Fins-TCP协议等,都是TCP通信协议的典型应用.很多人在上位机面试时,都 ...

  7. 面渣逆袭:二十二图、八千字、二十问,彻底搞定MyBatis!

    大家好,我是老三,面渣逆袭系列继续,这节我们的主角是MyBatis,作为当前国内最流行的ORM框架,是我们这些crud选手最趁手的工具,赶紧来看看面试都会问哪些问题吧. 基础 1.说说什么是MyBat ...

  8. MIP改造常见问题二十问

    在MIP推出后,我们收到了很多站长的疑问和顾虑.我们将所有疑问和顾虑归纳为以下二十个问题,希望对大家理解 MIP 有帮助. 1.MIP 化后对其他搜索引擎抓取收录以及 SEO 的影响如何? 答:在原页 ...

  9. GUI学习之二十九—QInputDialog学习总结

    最后一种对话框是QInputDialog,,用来提供个输入的窗口. 一常用的静态方法 由于输入的类型不同,QInputDialog分为多种静态方法使用 #有步长调节器的整形数据,step为步长调节器的 ...

随机推荐

  1. 160603、使用pd4ml.jar和ss_css2.jar转pdf的工具类

    注意:需要导入pd4ml.jar和ss_css2.jar import java.awt.Insets;import java.io.BufferedInputStream;import java.i ...

  2. Ubuntu 14.04 安装jdk,tomcat

     分类: 碎知识(8)  版权声明:本文为博主原创文章,未经博主允许不得转载. 写在前面: 装的时候,参考了许多网上的资料,有很多人写的有些简单了,人家那边版本稍微一更新,像我这样的小白就找不到东南西 ...

  3. Xcode升级了6.3 出现的警告:Auto property synthesis will not synthesize property

    1.  Auto property synthesis will not synthesize property 'title'; it will be implemented by its supe ...

  4. CSDN BI Flume

    https://so.csdn.net/so/search/s.do?q=bytebuf&t=%20&u=

  5. SpringBoot与消息(RabbitMQ)

    1. JMS和AMQP JMS(Java Message Service): ActiveMQ是JMS实现; AMQP(Advanced Message Queuing Protocol) 兼容JMS ...

  6. Win32调试API原理

    在Win32中自带了一些API函数,它们提供了相当于一般调试器的大多数功能,这些函数统称为Win32调试API(Win32 Debug API).利用这些API可以做到加载一个程序或捆绑到一个正在运行 ...

  7. mysql 迁移数据

    一.导出导入所有数据库的数据 1.导出 mysqldump -u root -p123456 --all-databases > all.sql 2.导入 mysql -u root -p123 ...

  8. 006-Shell printf 命令

    一.概述 printf 命令模仿 C 程序库(library)里的 printf() 程序. printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好. pr ...

  9. 用仿ActionScript的语法来编写html5——第一篇,显示一张图片

    第一篇,显示一张图片 一,代码对比 as代码: public var loader:Loader; public function loadimg():void{ loader = new Loade ...

  10. IDOC 实例测试

    这份文档主要是自己学习IDOC的一些练习过程及心得,可能讲的不全面,但应该可以帮助大家了解IDOC的一些工作方式. IDOC或者说是ALE,事实上,是SAP用于分布和集成数据的一种方式.所以,我个人就 ...