1

我有两个文件。

第一个文件:

45  76
77  23
12  93
77  10
82  92

第二个文件:

89
37
84
10
93

我想像这样将它们组合在一个文件中

89  45  76
37  77  23
84  12  93
10  77  10
93  82  92
4

3 回答 3

3

paste

$ paste file2 file1
89  45  76
37  77  23
84  12  93
10  77  10
93  82  92

pr

$ pr -mts'  ' file2 file1
89  45  76
37  77  23
84  12  93
10  77  10
93  82  92

awk

$ awk 'NR==FNR{a[NR]=$0;next}{print a[FNR],$0}' OFS='  ' file2 file1
89  45  76
37  77  23
84  12  93
10  77  10
93  82  92
于 2013-08-31T15:10:19.313 回答
0

paste是解决这个问题的规范工具。这是一个纯粹的 bash 替代品

while IFS= read -r -u 3 line1 && IFS= read -r -u 4 line2;
do
  printf "%s %s\n" "$line2" "$line1";
done 3<first 4<second
于 2013-08-31T15:37:06.040 回答
0

你可以试试这个: -

$ join file1.txt file2.txt

如果文件未排序,请尝试如下:

$ paste file2.txt file1.txt
于 2013-08-31T15:09:38.567 回答