首先,请原谅我,我是菜鸟。我的问题如下:
我有 2 个文本文件 - file1 和 file2。以下是文件示例和所需的输出:
文件1:
A B C
D E F
G H I
文件2:
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
等等。
有人可以帮我解决这个问题吗?
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