免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1876 | 回复: 3
打印 上一主题 下一主题

如何将不同文件的不同行内容连接成一行 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-08-02 16:11 |只看该作者 |倒序浏览
现在有2个文件:
1.txt的内容为
abcad
efasf
aef
dkjd
dfak
……
……

2.txt的内容为
123
456
789
ewe
rerir
……

如何产生文件3.txt——将文件1.txt与2.txt的对应行内容连接成为一行
如3.txt的结果为:
From:abcad   To: 123
From:efasf   To: 456
From:aef     To:789
From:dkjd    To:ewe
From:dfak    To:rerir
……
……

论坛徽章:
2
CU大牛徽章
日期:2013-04-17 11:46:28CU大牛徽章
日期:2013-04-17 11:46:39
2 [报告]
发表于 2012-08-02 16:21 |只看该作者
  1. open $fa, '<', '1.txt' or die $!;
  2. open $fb, '<', '2.txt' or die $!;
  3. while (1) {
  4.         chomp($l1 = <$fa>);
  5.         chomp($l2 = <$fb>);
  6.         last if !defined($l1) && !defined($l2);
  7.         print "From: $l1\tTo: $l2\n";
  8. }
  9. close $fb;
  10. close $fa;
复制代码

论坛徽章:
0
3 [报告]
发表于 2012-08-02 18:51 |只看该作者
本帖最后由 yizhengming 于 2012-08-02 19:29 编辑

perl  -ne  'chomp; if($ARGV eq "1.txt"){push @arr, "From : $_";} else{$arr[$i] =~ s/($arr[$i++])/$1\t To : $_\n/;} END{print @arr}' 1.txt 2.txt

论坛徽章:
0
4 [报告]
发表于 2012-08-03 01:05 |只看该作者
本帖最后由 xiyoulaoyuanjia 于 2012-08-03 01:05 编辑
  1. paste 1 2 | awk '{print "FROM:" $1 " TO:" $2 }'
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP