capable de lire deux fichiers simultanément

Je veux sortir ce qui suit de fileA et fileB:

fileA: abcde fileB: 1\t2\t3\ta bcde fileA: fghij fileB: 4\t5\t6\tf ghij fileA: klmno fileB: 7\t8\t9\tk lmno 

Cependant, mon script affiche les informations suivantes (et je ne peux pas comprendre pourquoi):

 fileA: abcde fileB: 1\t2\t3\ta bcde\n1 2 3 abcde fileA: fghij fileB: 4\t5\t6\tf ghij\n4 5 6 fghij fileA: klmno fileB: 7\t8\t9\tk lmno\n7 8 9 klmno 

déposer un:

 abcde fghij klmno 

fileB:

 123abcde 456fghij 789klmno 

script.sh:

 #!/bin/bash while : do read A <&3 read B <&4 [ -z "${A}" -a -z "${B}" ] && break echo "fileA: ${A}" echo "fileB: ${B}" done 3<fileA 4<fileB 

Notez que fait référence à un onglet réel du fichier.

Essayez de lire comme ceci:

 read -u 3 A read -u 4 B 

Il se trouve que je suis un idiot. Il y avait une instruction echo supplémentaire dans la boucle while (que j’ai oublié de commenter dans mon code).