94 votes

Comment entrelacer les lignes de deux fichiers texte

Quel est le moyen le plus simple et le plus rapide d'entrelacer les lignes de deux (ou plusieurs) fichiers texte ? Exemple :

Dossier 1 :

line1.1
line1.2
line1.3

Dossier 2 :

line2.1
line2.2
line2.3

Entrelacé :

line1.1
line2.1
line1.2
line2.2
line1.3
line2.3

Bien sûr, il est facile d'écrire un petit script Perl qui les ouvre tous les deux et effectue la tâche. Mais je me demandais s'il était possible de s'en sortir avec moins de code, peut-être une ligne unique en utilisant les outils Unix ?

-1voto

Sujoy Points 2544
cat file1 file2 |sort -t. -k 2.1

Ici, il est spécifié que le séparateur est "." et que nous trions sur le premier caractère du deuxième champ.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X