使用awk比较两个文件的内容

技术使用awk比较两个文件的内容 使用awk比较两个文件的内容干货记录
[Linux] 使用awk比较两个文件的内容
当需要比较A , B两个文件 , A文件中存在 , 并且把也在B文件中存在的行去除掉

使用awk比较两个文件的内容

干货记录

[Linux] 使用awk比较两个文件的内容

当需要比较文件A中存在的文件A和文件B,并删除文件B中也存在的行时,可以使用这个awk用法。

awk“{ if(ARGIND==1){ val[$0]} else { if(val中的$ 0)删除val[$ 0]} } END { for(I in val)print I } ' A B

使用awk同时处理多个文件,配合数组变量进行处理。

首先扫描文件A,将文件A中的每一行作为数组的键放入数组中

然后扫描文件B,确定B中的每一行是否存在于数组中,如果存在,就删除这个数组元素。

最后,在数组中统一打印密钥。

文件准备

创建两个文件,a.txt和b.txt,包含以下内容:

a.txt

b.txt

1-wfhune 2-chdamsbchj 3-uyr92 fiubkqw 5-cgvdnsb

2-djyv4-dvcahsgdb5-wvchdfyt

普通用法,整行对比

命令

diff a.txt b.txt

grep -f a.txt b.txt

grep -vf a.txt b.txt

解释

比较两个文件

从两个文件中获取行。

取文件B中但不在文件a中的行

结果

1,4c1,3 1-wfhune 2-chdamsbchj 3-uyr92 fiubkqw 5-cgvdnsb-2-djyv 4-dvcahsgdb

空的

2-djyv4-dvcahsgdb5-wvchdfyt

高级用法,每行关键部分对比

回头看这两个文件的内容,格式是x-yyyy。我们认为X是关键,yyyy是价值。现在我们只想比较X,而不是yyyy。

我该怎么办?

命令

grep-VF(cut-d-f1 a . txt)(卡特彼勒b.txt)

grep-VF(awk-F '-' ' { print $ 1 } ' a . txt)(cat b . txt)

解释

()用于命令嵌套。Cut -d -f1a.txt,其中参数-d用于定义分隔符,参数-f用于定义分段后要提取的文本段落数。例如,在这里将分隔符定义为“-”,并提取分段后的第一段文本。

用awk命令代替cut命令就可以了,效果一样。Awk的-F参数用于定义分隔符,printf $X提取X段的分段文本。

结果

4-dvcahsgdb

4-dvcahsgdb

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/107442.html

(0)

相关推荐

  • 小2寸照片尺寸是多少,小2寸照片的尺寸是多少?

    技术小2寸照片尺寸是多少,小2寸照片的尺寸是多少?1寸 2小2寸照片尺寸是多少。5*3。5cm 413*295 身份证照 3。3*2。2 390*260 2寸 3。5*5。3cm 626*413【需要尺寸】 2寸(护照)

    生活 2021年10月20日
  • 为什么oracle 10.2.0.5只会获取child#=1的shared pool latch

    技术为什么oracle 10.2.0.5只会获取child#=1的shared pool latch这篇文章主要介绍了为什么oracle 10.2.0.5只会获取child#=1的shared pool latch,具有

    攻略 2021年11月12日
  • 平面法向量的求法,平面方程和法向量的关系及证明

    技术平面法向量的求法,平面方程和法向量的关系及证明所谓平面的法向量,就是与平面垂直的一个向量,它就是由平面方程中三个未知数的系数所组成的向量。 它们的关系可如此证明平面法向量的求法: 设向量(A,B,C)是一个过点(x0

    生活 2021年10月20日
  • 沃尔沃是哪国车,沃尔沃汽车原产地是哪个国家

    技术沃尔沃是哪国车,沃尔沃汽车原产地是哪个国家沃尔沃,英文名为Volvo,原为瑞典著名汽车品牌,又译为富豪,该品牌汽车安全性能很高沃尔沃是哪国车。沃尔沃汽车公司原是北欧最大的汽车企业,也曾经是瑞典最大的工业企业集团,其中

    生活 2021年10月21日
  • R语言如何使用RcppEigen进行矩阵运算

    技术R语言如何使用RcppEigen进行矩阵运算这篇文章主要介绍了R语言如何使用RcppEigen进行矩阵运算,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下

    攻略 2021年11月6日
  • 关于mysql的相关操作是怎样的

    技术关于mysql的相关操作是怎样的这篇文章将为大家详细讲解有关关于mysql的相关操作是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、Mysql用户密码修改m

    攻略 2021年10月25日