---===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. 实现返回top功能

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. Centos7.2yum安装时候出现db5错误的解决办法

    Centos7.2使用yum安装软件是出现如此错误提示 解决办法 删除 /var/lib/rpm文件夹下面所有以__db开头的文件

  3. Oracle涂抹oracle学习笔记第9章RMAN说,我能恢复

    RMAN中的恢复对应两个操作:数据库修复(restore)和数据库恢复(recover) 数据库修复(restore):是指利用备份集的数据文件来替换已经损坏的数据库文件或者将其恢复到一个新的位置.R ...

  4. Code Forces 644B Processing Queries

    B. Processing Queries time limit per test5 seconds memory limit per test256 megabytes inputstandard ...

  5. 巨蟒python全栈开发flask10 项目开始2

    1.websocket异常处理 出现上图报错的原因是什么? 原因是:websocket断开了,所以报错 19行接收的msg是None值,所以报错. 打开一个文件,点击发送音乐,出现上面的内容: 客户端 ...

  6. HDU2604—Queuing

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2604 题目意思:n个人排队,f表示女,m表示男,包含子串‘fmf’和‘fff’的序列为O队列,否则为E ...

  7. cocoapod 最新安装使用步骤

    cocoapod 最新安装使用步骤 安装 1.sudo gem update (2个-)system :更新你的gem system至最新 2.gem sources  (2个-)remove htt ...

  8. 剑指Offer——字符串的排列

    题目描述: 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 输入描述: ...

  9. mapjoin与reducejoin

    一.mapjoin 1.Mapper类 package com.css.mapjoin; import java.io.BufferedReader; import java.io.FileInput ...

  10. 病毒侵袭持续中---hdu3065(AC自动机模板)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3065 模板题,没什么好说的... #include<stdio.h> #include&l ...