URL: https://linuxfr.org/forums/linux-debian-ubuntu/posts/etrange-comportement-de-echo Title: Etrange comportement de "echo" Authors: FloBaoti Date: 2015年03月27日T15:52:42+01:00 License: CC By-SA Tags: Score: 1 Bonjour à la communauté, Je rencontre un petit soucis qui me gêne et que je n'arrive pas à expliquer. Plutôt qu'un long discours, je vous laisse regarder. J'ai une commande, qui quand je l'exécute directement dans bash me donne : echo "status" | nc -q 1 127.0.0.1 4730 createVPNUser 0 0 1 stop_createVPNUser_1 0 0 1 . On constate donc qu'il y a 3 lignes, c'est confirmé si j'affiche en hexa : echo "status" | nc -q 1 127.0.0.1 4730 | hexdump -C 00000000 63 72 65 61 74 65 56 50 4e 55 73 65 72 09 30 09 |createVPNUser.0.| 00000010 30 09 31 **0a** 73 74 6f 70 5f 63 72 65 61 74 65 56 |0.1.stop_createV| 00000020 50 4e 55 73 65 72 5f 31 09 30 09 30 09 31 **0a** 2e |PNUser_1.0.0.1..| 00000030 0a |.| 00000031 Maintenant, si je veux mettre ce retour de commande dans une variable, comme ceci : test=$(echo "status" | nc -q 1 127.0.0.1 4730) Et que j'affiche $test avec echo, les tabulations et retours de lignes sont remplacés par de simples espaces ! echo $test | hexdump -C 00000000 63 72 65 61 74 65 56 50 4e 55 73 65 72 20 30 20 |createVPNUser 0 | 00000010 30 20 31 **20** 73 74 6f 70 5f 63 72 65 61 74 65 56 |0 1 stop_createV| 00000020 50 4e 55 73 65 72 5f 31 20 30 20 30 20 31 **20** 2e |PNUser_1 0 0 1 .| 00000030 0a |.| 00000031 Comment cela se fait-il ? Je n'ai jamais rencontré ce problème avec d'autres commandes... Quelqu'un a une idée ?