Je dois remplacer une partie des valeurs dans un fichier par des valeurs d'un autre si un des champs correspond.Complexe awk remplacer d'un fichier à l'autre
fichier à remplacer:
NULL,NULL,1,'2017-01-01 00:00:00','2017-12-31 23:59:59','SE','AL',300,200,12,1,24,1,19,110,220,1
NULL,NULL,1,'2017-01-01 00:00:00','2017-12-31 23:59:59','SE','AG',300,200,12,1,24,1,19,110,220,1
fichier qui contient les valeurs correctes:
'AL',220,110
'DZ',379,189.5
'AO',931,465.5
'AG',659,329.5
Donc fichier1 par le match « AL » je remplacer column8 avec colonne2 de fichier2 et column9 avec colonne3 à partir de fichier2. Comment y parvenir avec awk ou quelque chose de similaire, mais pas perl, merci. :)
Et les conditions dans une sorte de code pseudo:
if (file2[col1] == file1[col7])
file1[col8] = file2[col2]
file1[col9] = file2[col3]
Essentiellement la même réponse, il semble. ++ –
@JamesBrown: Je dirais pour une fois .. :) – Inian
Merci, ça fonctionne comme un charme! @Inian – user3309234