将文件A的内容追加到文件B中每行的末尾?庆典

时间:2013-09-10 02:13:33

标签: bash shell sed awk

我真的不能得到这个。

文件A有这个:

1.1.1.1
2.2.2.2
3.3.3.3

等。

文件B将始终具有完全相同的行数,并且它们始终对应:

oneoneoneone
twotwotwotwo
3ee3ee3ee3ee

我想将文件A附加到文件B,所以它看起来像:

1.1.1.1 oneoneoneone
2.2.2.2 twotwotwotwo
3.3.3.3 3ee3ee3ee3ee

这就是我所拥有的,但不应该像它一样:

表示`cat / tmp / fileB中的z;做sed“s /(。*)/ \ 1 $ z /”< / tmp / fileA>> / TMP / C;完成

有什么建议吗?

1 个答案:

答案 0 :(得分:5)

如果要将fileB中的行追加到fileA中的行(如所需的输出所示),您只需执行以下操作:

paste fileA fileB

它使用了分隔符的标签,因此您可能更喜欢

paste -d ' ' fileA fileB

如果您想使用awk,请执行以下操作:

awk '{ getline b < "fileB"; print $0, b}' fileA

这可能与sed有关,但不建议这样做。与您在循环中尝试的类似,您也可以这样做:

while read b; do read -u 4 a; echo $a $b; done < fileb 4< filea