J'exécute iwlist wlo1 scan | grep ESSID
dans un script.
Il affiche les caractères français au format suivant
\xC3\x89
pour É et \xC3\xA9
pour é.
Je ne sais pas comment s'appelle ce format. J'ai essayé d'utiliser une réponse pour convertir unicode echo -ne '\xC3\xA9' | iconv -f utf-16be
mais il a été converti en 쎩
.
Quel est le nom officiel de ce format et comment puis-je le convertir en bash ?
Réponse acceptée :
Les constantes numériques hexadécimales sont généralement représentées par 0x
préfixe.
Les constantes de caractères et de chaînes peuvent exprimer des codes de caractères en hexadécimal avec le préfixe \x
suivi de deux chiffres hexadécimaux.
echo -ne '\xC3\x89'
devrait vous donner É
.
-e
- activer l'interprétation des échappements antislash (y compris\xHH
– octet de valeur hexadécimaleHH
(1 à 2 chiffres))
Pour faire face à une meilleure portabilité utilisez printf
fonction :
printf "%b" '\xC3\x89'
É