Bonjour,
J'ai un problème pour rapprocher deux fichiers ensemble, je m'explique.
Je dispose de deux fichiers avec un même dénominateur commun le second champ de chaque fichier :
Fichier 1 :
Fichier 2 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 4298 10.10.22.12 4114 1.13.28.12 4216 1.130.26.118 4373 10.0.8.92 4133 10.10.16.17
Ce que j'aimerais c'est trier les deux fichiers avec le deuxième champs pour créer un fichier comme cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 toto 10.10.22.12 tata 1.13.175.12 titi 1.130.26.118 tutu 10.39.8.92 tete 10.10.16.17
J'ai essayé avec la commande sort mais les fichiers ne sont pas dans l'ordre attendu :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 toto 4298 titi 4216 tete 4133
J'ai donc essayé de trier mes fichiers par ordre croissant mais je me suis aperçu que les deux fichiers ne partagent pas forcément les mêmes adresses IP :
Code : Sélectionner tout - Visualiser dans une fenêtre à part join -1 2 -2 2 fichier1.txt fichier2.txt
Existe-t-il une autre alternative à la commande "join" qui lui semble attendre des fichiers trier ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 awk '{print $2}' fichier1.txt | sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tail -5 192.168.62.198 192.168.62.199 192.168.62.200 192.168.62.201 192.168.62.202 awk '{print $2}' fichier2.txt | sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n | tail -5 172.102.198.37 172.102.198.38 172.102.198.39 172.102.198.42 172.102.198.43
Merci par avance,
Partager