How can I match a column from a file to next file and append the columns if present using awk.
File 1:
T36 T200 T77 T99 T100 T101 T110 File2:
T36 aa 123 T36 aa 456 T200 cc 789 T99 aa 1011 T77 bb 1213 T77 bb 1415 T100 xx 1617 Desired output:
T36 aa 123 T36 aa 456 T200 cc 789 T77 bb 1213 T77 bb 1415 T99 aa 1011 T100 xx 1617 T101 T110 In my output file I want to get the order of file 1 and also print the lines that are not present in file 2.
So far I have done this but it is printing only the matched columns not all.
awk 'NR == FNR { x[$1]=$1; next} { print x[$1], $0 }' file1 file2 Please Help!
file2first and laterfile1(2) You have to save multiline string for every key, that means appending to exisitng value, (depending on a conditional expression) and not overwriting (3) when printing, again a ternary is needed because you want to print the key if there is no value.