en utilisant la command awk pour comparer les deux files et imprimer toutes les colonnes alors manquant afficher comme NA

Fichier 1:

123, 234 345, 789 678, 900 

Fichier 2

 123, abc 345, dnc 

Sortie souhaitée (toutes les colonnes du file1 et la valeur manquante dans le file deux en tant que NA):

 123,234,abc 345,789,dnc 678,900,NA 

C'est plus facile si vous utilisez la jointure :

 $ join -t, -a 1 -a 2 -j 1 -e ' NA' -o auto file1 file2 123, 234, abc 345, 789, dnc 678, 900, NA 
 awk -F ", ?" -v OFS=, 'FNR == NR { a[$1]=$2;next; }; { if ($1 in a) print $1,$2,a[$1]; else print $1,$2,"NA"; }' file2 file1 

awk

 awk 'BEGIN{OFS=""}NR==FNR{a[$1]=$2;};NR>FNR{if($1 in a){print $0,", ",a[$1];}else{print $0,", NA";}}' file2 file1 > tmp 

la sortie sera stockée dans tmp, comme vous avez demandé de mettre à jour depuis le file3

 awk 'BEGIN{OFS=""}NR==FNR{a[$1]=$2;};NR>FNR{if($1 in a){print $0,", ",a[$1];}else{print $0,", NA";}}' file3 tmp 

sortie:

 123, 234, abc, 2014/10/20 345, 789, dnc, NA 678, 900, NA, 2013/02/30