awk file1 file2问题总结:

如下有两个文本

file1

aaa 111

bbb 222

ccc 333

ddd 444

file2

aaa 111

bbb 222

ccc 333

ddd 444

eee 555

要求1:合并文件file1和file2并且将重复的行排除掉

awk 'NR==FNR{a[$0]=1;print $0}NR>FNR&&(!a[$0]++){print $0}' file1 file2

解释:

当NR==FNR的时候,读取的是第一个文件file1,a[$0]=1;print $0为把所有的数组内容全部就行输出,就输出了第一个文件中的所有的内容。当NR>FNR的时候,读取的是第二个文件,!a[$0]++的为如果这个字符串在第一个文件中没有出现过,那么a[$0]的值为0,前面取反的话为1,这时候执行后面的action,会输出。如果$0出现过,那么a[$0]的值就是1,取反的结果为0,就不会进行输出。

要求2:判断file1中有的内容而file2中没有的内容,并进行输出

awk ‘NR==FNR{a[$0]=1}NR>FNR&&(!a[$0]++){print $0}’ file1 file2

解释参照上面。

awk file1 file2问题总结相关推荐

  1. 2、将file1/file2/file3三个文件中内容合并到一个文件中命名为filetest.txt

    cat file1.txt file2.txt file3.txt >filetest.txt cat -sb filetest.txt

  2. Shell脚本学习之二:变量与运算符

    variable-name = value [root@Gwan ~]# LOCALTEST="test" [root@Gwan ~]# echo ${LOCALTEST} tes ...

  3. Shell脚本学习指南(五)——变量、判断、重复动作

    文章目录 前言 变量与算术 变量赋值与环境 参数展开 展开运算符 位置参数 特殊变量 算术展开 退出状态 退出状态值 if-else-else-fi语句 逻辑的NOT.AND与OR test命令 ca ...

  4. Linux在文件第一列添加字段,linux – 如何将file1的每一列追加到file2的特定字段并创建一个新的输出文件?...

    我想将文件1的每一列作为文件2的第4列附加并导出为新文件,其中包含来自文件1的列号或类似于输出名称的列号. 输入文件1和2具有相同的行数: 输入文件1有N列: 12 23 34 ..... 33 34 ...

  5. awk 6.0 — awk模式之二

    awk的语法 awk [options] 'Pattern {Actions}' file1,file2- 之前介绍了三种模式:空模式,关系运算模式,BEGIN/END模式 正则模式 模式可以理解成条 ...

  6. awk5.0 — awk模式之一

    再次重申awk的语法 awk [options] 'Pattern {Actions}' file1,file2- awk模式,在之前的文章中简单使用了BEGIN和END.这里的模式,其实我们可以理解 ...

  7. awk2.0 — awk分隔符

    再次重申awk的语法 awk [options] 'Pattern {Actions}' file1,file2- awk默认分隔符是空格,分隔符有分为"输入分隔符"和" ...

  8. awk1.0 — awk基础

    简介 grep,sed,awk被称为Linux文本处理的三剑客,各有特点 grep:适合文本的匹配和查找 sed:编辑匹配到的文本 awk:对文本进行格式化输出 awk简介 awk的基本语法是 awk ...

  9. linux NF NR实例,awk中使用NR和FNR的一些例子

    QUOTE:1.用某一文件的一个域替换另一个文件中的的特定域? 文件passwd: s2002408030068:x:527:527::/home/dz02/s2002408030068:/bin/p ...

最新文章

  1. 网络安全系列之五十二 组策略中的软件限制策略
  2. python---简单的接口测试实例
  3. Servlet--05--HttpServletRequest; HttpServletResponse
  4. [bzoj2882]工艺_后缀数组
  5. 带注释的c51汇编语言,51单片机汇编语言实现交通灯 代码有详细注释
  6. [最新]制作u盘引导安装ubuntu11.04
  7. 信息学奥赛C++语言:最大数max(x,y,z)
  8. SpringBoot整合ElasticSearch实现多版本的兼容
  9. 35 岁财务自由的小马哥,我想跟他学学!
  10. Mybatis中的StatementType
  11. 看博客学学Android(二十一)
  12. 网站的icon图标与阿里云图标库的使用
  13. Visual Studio安装及无法打开包括文件: “crtdbg.h”问题解决
  14. NuttX的学习笔记 9
  15. PPT中去除水印的方法
  16. npm audit fix命令使用
  17. 为啥一个字节等于八比特
  18. 成功就是日复一日那一点点小小努力的积累
  19. 罗斯蒙特248HANAU2NS温度变送器
  20. 2020年第四届计算机检测维修与数据恢复国赛模拟比赛

热门文章

  1. 普林斯顿大学颜宁教授宣布全职加盟深圳医学科学院
  2. Metasploit基础
  3. JQuery-weui city-picker动态加载数据
  4. Codeforces 939C - Convenient For Everybody
  5. 随手拍好片如何炼成?用完小米10至尊纪念版我就明白了
  6. 【操作系统】FIFO先进先出页面置换算法(C语言实现)
  7. 【STM32F429】第4章 RTX5操作系统移植(MDK AC5)
  8. 广东省软考报名时间成绩查询广东省教育考试院广东省人事考试网报名入口
  9. Shiro+JWT+Redis实现用户校验
  10. Listary中使用Everything搜索