Bonjour à tous
Tout est dans le titre: je n'arrive pas à récupérer le caractère "\n" représenté par le code ascii 10 dans une variable.

J'ai pourtant tout essayé. Tout d'abord la soluce de N_Bah dans une discussion analogue ici en tapant var="$(echo 10 |awk '{printf("%c", $1)}')". Ou une autre en tapant var="$(echo -e "\012")" mais rien n'y fait, Quand ensuite je tente echo "x${var}y" j'ai un bête "xy" alors que j'espérais avoir "x\ny".

En fait, ma "$var" reste désespérément vide. Je peux même taper test -z "$var" && echo "vide" et j'ai bien "vide" qui apparait. Ou alors echo "x${var}y" >f1; echo "xy" >f2; cmp f1 f2 et ça me renvoie rien indiquant alors que f1 et f2 sont identiques.

Pourtant à la base ça fonctionne car en tapant par exemple echo -e "\012" >fic ; od -x fic je vois bien "0a0a" (le premier vient de la conversion octale et le second a été envoyé par le "echo" lui-même comme il le fait à chaque fois qu'on n'invoque pas le "-n". Mais même là si je rajoute echo "x$(cat fic)y" je n'obtiens rien de plus que si j'avais tapé echo "xy".

Si quelqu'un a une idée...

Merci de votre attention