忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 认证专区 大话IT 徽章 文库 自测 下载 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
最近访问板块 发新帖
查看: 1312 | 回复: 3

[文本处理] 怎么保留两个文件第一列相同的行 [复制链接]

论坛徽章:
0
发表于 2018-01-06 13:23 |显示全部楼层
20可用积分
有两个文件a和b,如下:
文件a:

abc  1  2  3  4
ase  2  3  4  5
adr  2  4  6  5
nsk  2  3  9  8

文件b:

abc  2   3   4   5
nsk  2   3   9   6
hka  2   3   7   8

输出文件a1和b1  或者合并后的文件c:

a1:  abc  1  2  3  4    b1: abc  2   3   4   5    c: abc  1  2  3  4  2   3   4   5
       nsk  2  3  9  8          nsk  2   3   9   6        nsk  2  3  9  8  2   3   9   6


非常感谢

最佳答案

论坛徽章:
3
程序设计版块每日发帖之星
日期:2016-05-03 06:20:0015-16赛季CBA联赛之同曦
日期:2017-09-11 14:39:482016科比退役纪念章
日期:2018-01-19 12:45:59
发表于 2018-01-06 13:23 |显示全部楼层

  1. awk 'FILENAME==ARGV[1]{a[$1]=$0;next}a[$1]{b=gensub($1,"","g",$0);print a[$1]>"a1";print>"b1";print a[$1],b>"c"}' a b
复制代码

论坛徽章:
8
双子座
日期:2013-08-31 07:37:12金牛座
日期:2013-09-09 18:49:12处女座
日期:2013-09-23 11:43:14处女座
日期:2013-10-09 19:48:21狮子座
日期:2014-03-24 18:22:12丑牛
日期:2014-04-22 22:07:51申猴
日期:2014-06-12 21:54:13双鱼座
日期:2014-06-13 21:52:31
发表于 2018-01-07 13:32 |显示全部楼层
  1. [root@host ~]# sort a > a1
  2. [root@host ~]# sort b > b1
  3. [root@host ~]# join a1 b1
  4. abc 1 2 3 4 2 3 4 5
  5. nsk 2 3 9 8 2 3 9 6
复制代码

论坛徽章:
0
发表于 2018-01-08 15:17 |显示全部楼层
按照某【公共列】合并两个文件

powershell 解题方案:
合并csv表的模块

主页:   https://github.com/EliteLoser/MergeCsv
安装:   Install-Module -Name MergeCsv

命令参数:
MergeCsv     `   #`为换行接续符
-identity 公共字段1,公共字段2    `
-path a.csv,b.csv,c.csv     `
-Allowduplicates

用法说明:
假设
a.csv中,有3个字段:公共字段1,公共字段2,aaaaaa
b.csv中,有4个字段:公共字段1,公共字段2,bbbbbb,ccc
c.csv中,有3个字段:公共字段1,公共字段2,dddddd
则合并完成后,的字段为:
公共字段1,公共字段2,aaaaaa,bbbbbb,ccc,dddddd

另:主页里有图片说明。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

DTCC2018购票6.8折优惠进行时

中国数据库技术大会是国内数据库及大数据领域规模最大、最受欢迎的技术交流盛会。 2018年5月10-12日,第九届中国数据库技术大会将如约而至。本届大会以“数领先机•智赢未来”为主题,设定2大主会场及20个技术专场,邀请来自国内外互联网、金融、教育等行业百余位技术专家,共同探讨Oracle、MySQL、NoSQL、大数据等领域的前瞻性热点话题与技术。
----------------------------------------
优惠时间:2018年2月13日前

报名链接>>
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP