如何合并对应行中的两个文件?


9

现在,我有两个文件:

aaaa.txt

a=0;
b=1;
c=2;

bbbb.txt

d=3
e=4
f=5

我想合并aaaa.txt,并bbbb.txtcccc.txt

cccc.txt 如下:

a=0;d=3
b=1;e=4
c=2;f=5

那么,我该怎么办?

Answers:


13

您可以为此使用粘贴:

paste -d '\0' aaaa.txt bbbb.txt > cccc.txt

从您的问题来看,第一个文件似乎包含;在末尾。如果不是,则可以通过使用用作分隔符-d ';'

请注意,与可能会想到的相反-d '\0',它不是以NUL字符作为分隔符粘贴,而是粘贴有空的分隔符。这是指定空定界符的标准方法。pasteGNU之类的某些实现paste允许paste -d ''这样做,但是它既不是标准的也不是可移植的(如果使用,许多其他实现将报告有关缺少定界符的错误paste -d '')。


@克里斯·唐纳(Chris Down)-非常感谢,它起作用了。另外,另一个问题是:awk'{sed's /.*,/ 999 / g'}'cccc.txt为什么返回awk:{sed s /.* ,/ 999 / g} awk:^语法错误。它出什么问题了?
binghenzq

我不确定您要做什么,但是您不能像这样将sed传递给awk ...
克里斯·

@克里斯·唐纳(Chris Down)-Thans,我明白了。
binghenzq 2013年

请问其他问题,也请问其他问题。它使它们对以后的用户有用(可能找到!)。
vonbrand '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.