Comment écrire des caractères non- ASCII en utilisant écho? Y a-t-il une séquence d’échappement, telle que \012
ou quelque chose comme ça?
Je souhaite append des caractères ASCII à un fichier en utilisant:
echo ?? >> file
Utilisation
echo -e "\012"
Si vous vous souciez de la portabilité, vous allez supprimer echo et utiliser printf (1) :
printf '\012'
Sur mon terminal,
printf '\012' >>output.txt
fonctionne à la fois pour la représentation octale du caractère ascii et pour l’hexadécimal correspondant:
printf '\xA' >>output.txt
La commande
echo -en '\012' >>output.txt
Cependant, ne fonctionne pas correctement. Seuls les hexadécimaux semblent fonctionner avec echo -e. Le paramètre -n supprime la nouvelle ligne par défaut de l’écho.
J’ai pris des caractères non-ASCII pour désigner Unicode, du moins dans mon cas, mais printf "\x##"
n’était pas suffisant pour ma solution à deux octets, donc j’ai utilisé cette syntaxe légèrement différente à la place:
> printf "\u25ba" ►