2012-07-03 55 views
0

首先,請原諒我,我是一個noob。 我的問題如下:循環合併2個文件

我有2個文本文件 - file1和file2。 以下是該文件的樣本和所需的輸出:

file1的:

A B C 
D E F 
G H I 

file2的:

a1 a2 a3 
b1 b2 b3 
c1 c2 c3 

希望的輸出:

A B C a1 a2 a3 
A B C b1 b2 b3 
A B C c1 c2 c3 
D E F a1 a2 a3 
D E F b1 b2 b3 
D E F c1 c2 c3 

等。

有誰能幫我解決這個問題嗎?

+0

你試試這個? '粘貼file1 file2' – cppcoder

回答

2
awk 'FNR == NR {file2[FNR] = $0; c++; next} {for (i = 1; i <= c; i++) {print $0, file2[i]}}' file2 file1 

將file2的所有行讀入數組中。對於file1的每一行,循環訪問數組,並從file1中打印行,並從file2中打印行。

在bash:

while read -r line 
do 
    file2+=("$line") 
done < file2 

while read -r line 
do 
    for line2 in "${file2[@]}" 
    do 
     echo "$line $line2" 
    done 
done < file1