文件1.txt
A 1 2 3
文件2.txt
A 1
A 2
A 3
可以使用以下代码将文件2转换为文件1(第一列是主键):
cat File2.txt| awk '{line="";for (i = 2; i <= NF; i++) line = line $i " "; table[$1]=table[$1] line;} END {for (key in table) print key "\t" table[key];}' > File1.txt
如何从文件 1 中的格式返回到文件 2 中的格式?
答案1
尝试这个:
$ echo "A 1 2 3" | awk '{for(i=2;i<=NF;i++)printf("%s\t%d\n",$1,$i)}'
A 1
A 2
A 3