array[index1,index2,……] ,SUBSEP是数组下标分割符,默认为 “\034”
awk 'BEGIN{SUBSEP=":"; array["a","b"]=1; for(i in array) print i}'
awk 'BEGIN{array["a"":""b"]=1;for(i in array) print i}'
# cat file1
g1.1 2
g2.2 4
g2.1 5
g4.1 3
# cat file2
g1.1 2
g1.2 3
g4.1 4
# cat file3
g1.2 3
g5.1 3
# awk '{a[ARGIND" "$1]=$2; b[$1]}
END {
for(i in b) {
printf i" ";
for(j=1;j<=ARGIND;j++)
printf "%s ", a[j" "i] ? a[j" "i] : "-";
print "";
}
}' file1 file2 file3
g2.2 4 - -
g5.1 - - 3
g1.1 2 2 -
g1.2 - 3 3
g4.1 3 4 -
g2.1 5 - -