linux awk合并文件,在Linux中使用AWK合并两个文件
我有一个1.txt文件:
betomak@msn.com||o||0174686211||o||7880291304ca0404f4dac3dc205f1adf||o||Mario||o||Mario||o||Kawati
zizipi@libero.it||o||174732943.0174732943||o||e10adc3949ba59abbe56e057f20f883e||o||Tiziano||o||Tiziano||o||D'Intino
frankmel@hotmail.de||o||0174844404||o||8d496ce08a7ecef4721973cb9f777307||o||Melanie||o||Melanie||o||Kiesel
apoka-paris@hotmail.fr||o||0174847613||o||536c1287d2dc086030497d1b8ea7a175||o||Sihem||o||Sihem||o||Sousou
sofianomovic@msn.fr||o||174902297.0174902297||o||9893ac33a018e8d37e68c66cae23040e||o||Nabile||o||Nabile||o||Nassime
donaldduck@yahoo.com||o||174912161.0174912161||o||0c770713436695c18a7939ad82bc8351||o||Donald||o||Donald||o||Duck
cernakova@centrum.cz||o||0174991962||o||d161dc716be5daf1649472ddf9e343e6||o||Dagmar||o||Dagmar||o||Cernakova
trgsrl@tiscali.it||o||0175099675||o||d26005df3e5b416d6a39cc5bcfdef42b||o||Esmeralda||o||Esmeralda||o||Trogu
catherinesou@yahoo.fr||o||0175128896||o||2e9ce84389c3e2c003fd42bae3c49d12||o||Cat||o||Cat||o||Sou
ermimurati24@hotmail.com||o||0175228687||o||a7766a502e4f598c9ddb3a821bc02159||o||Anna||o||Anna||o||Beratsja
cece_89@live.fr||o||0175306898||o||297642a68e4e0b79fca312ac072a9d41||o||Celine||o||Celine||o||Jacinto
kendinegel39@hotmail.com||o||0175410459||o||a6565ca2bc8887cde5e0a9819d9a8ee9||o||Adem||o||Adem||o||Bulut
2.txt文件:
9893ac33a018e8d37e68c66cae23040e:134:@a1
536c1287d2dc086030497d1b8ea7a175:~~@!:/92\n8d496ce08a7ecef4721973cb9f777307:demodemo
1.txt的FS为“ || o ||”对于2.txt是“:”
我想基于1.txt的第三列必须与2.txt文件的第一列匹配并且应由2.txt文件的第二列替换的情况下,将两个文件合并到单个文件result.txt中.
预期的输出将包含所有匹配的行:
我向您展示其中之一:
sofianomovic@msn.fr||o||174902297.0174902297||o||134:@a1||o||Nabile||o||Nabile||o||Nassime
我尝试了脚本:
awk -F"||o||" 'NR==FNR{s=$0; sub(/:[^:]*$/, "", s); a[s]=$NF;next} {s = $5; for (i=6; i<=NF; ++i) s = s "," $i; if (s in a) { NF = 5; $5=a[s]; print } }' FS=: result.txt
但是结果是一个空文件.任何帮助将不胜感激.
linux awk合并文件,在Linux中使用AWK合并两个文件相关推荐
- python文件名按数字排序_用Python按照文件的名字中包含的数字排序出文件
使用Python按照文件的名字中包含的数字排序出文件 原来的样式: file_list = ['第10周成绩.xlsx', '第11周成绩.xlsx', '第12周成绩.xlsx', '第13周成绩. ...
- Linux安装Docker容器环境centos中安装docker-compose容器编排dockerfile文件构建镜像(史上最详细的docker)
在Linux系统下安装docker容器环境 1.容器介绍 1.1 镜像(Image) 镜像可以用来创建Docker 容器,Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像, 用户甚至可 ...
- linux比较10个文件是否一致,Linux中文件管理--cmp--比较两个文件是否有差异
cmp命令用于比较两个文件是否有差异,当相互比较的两个文件完全一样时,则该命令不会显示任何信息.若发现有所差异,预设会标示出第一个不同之处的字符和列数编号.若不指定任何文件名称或是所给予的文件名为&q ...
- python两个csv表数据合并_python – 根据列中的数据合并两个CSV文件
我有两个csv文件,如下所示. CSV1 data13 data23 d main_data1;main_data2 data13 data23 data12 data22 d main_data1; ...
- php word 邮件合并发送邮件,在word2010中的邮件合并,除需要主文档,还需要什么...
在word2010中的邮件合并,除需要主文档外,还需要已制作好的数据源支持.邮件合并需要有两个文档:一个WORD包括所有文件共有内容的主文档(比如未填写的信封等)和一个包括变化信息的数据源EXCEL( ...
- python打开并读取csv文件_!python3中使用使用read_csv( )读取csv文件,文件路径中含有中文,无法读取怎么处理?...
python3如何根据csv文件的列的内容,自动建数据库表 你好,csv格式的和excel格式是差不多的, 下面是读取excel的一些函数,希望帮到你: # -*- coding: cp936 -*- ...
- html怎么把excel表格合并单元格,Excel中如何快速合并多个单元格
Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件.当我们制作表格中重复信息过多,通常会把重复信息的单元格进行合并.下面就给大家介绍 ...
- python返回文件行号_用python比较两个文件中内容的不同之处, 并输出行号和内容....
'''cmpfile.py - 比对两个文件, 如果有不同之处, 打印内容和行号''' import os class cmpFile: def __init__(self, file1, file2 ...
- java 删除文件失败_java中File的delete()方法删除文件失败的原因
一般来说 java file.delete失败 有以下几个原因 1.看看是否被别的进程引用,手工删除试试(删除不了就是被别的进程占用) 2.file是文件夹 并且不为空,有别的文件夹或文件, 3.极有 ...
- python两个文件内容异或,python 异或两个文件
问题描述:python以16进制读取文本,就是获取以下图片红框中的DF,F8,DF这些16进制,然后做一些处理,再写到文件中. 1个字节 == 8Bit == 两个hex(1~F) 文件读取可以按行r ...
最新文章
- 菜菜sklearn——XGBoost(1)
- 搭建DNS域名解析服务器和本地配置HOST文件有什么区别?
- 【海洋女神原创】谈谈静默安装
- 第9条:覆盖equals时总要覆盖hashCode
- Java基础学习需要掌握哪些内容?
- 指针运算符 * 说明
- DeFi史上最大盗窃案:一个漏洞盗走价值6亿美元资产?
- 新手入坑自动驾驶,我是这么学习的......
- matlab 液压,基于MATLAB液压系统设计与仿真.doc
- ARP协议的工作流程
- 用大数据文本挖掘来看“共享单车”的行业现状及走势
- InstallShield可靠的 Windows 安装程序
- 阿里面试官内部题库,阿里发布2022年Java岗(正式版)面试题
- LeaRun快速开发平台,快速开发.net/java项目
- linux内核的红黑树
- android Studio3.02的 android SDK manger在哪?
- MAK vrforce 5.0 vrvantage3.0 vrengage 2.0
- ARCHLine.XP集成了BIMcatalogs.net平台提供的素材库
- 关于比尔·乔伊(Bill Joy),有哪些有趣的故事?
- 计算机一级证书的编号怎么查?