On déclare deux tableaux associatifs (on accède aux éléments par une clé plutôt que par un indice), puis on parcourt le premier fichier et on ajoute le dernier élément :
typeset -A aa bb
aa=($(<1ドル))bb=($(<2ドル))for k in ${(nk)aa} ; print $k$aa[$k]$bb[$aa[$k]]
Ce qui nous donne :
1 48102 Georges
2 48103 Lili
3 48152 Mélina
4 48156 Chantal
5 48189 Daniel
On peut aussi parcourir le second fichier et remplacer les éléments manquants par « ? » :
for k in ${(nk)bb} ; print ${(k)aa[(r)$k]:-\?}$k$bb[$k]
Ce qui nous donne :
? 14 jean
? 503 Benjamin
1 48102 Georges
2 48103 Lili
3 48152 Mélina
4 48156 Chantal
5 48189 Daniel
? 48512 Esthelle
# Avec Zsh
Posté par calandoa . En réponse au message Utilisation de awk pour la jointure de 2 fichiers. Évalué à 3.
On déclare deux tableaux associatifs (on accède aux éléments par une clé plutôt que par un indice), puis on parcourt le premier fichier et on ajoute le dernier élément :
Ce qui nous donne :
On peut aussi parcourir le second fichier et remplacer les éléments manquants par « ? » :
Ce qui nous donne :