J'écris un script bash qui doit analyser html qui inclut des caractères spéciaux tels que @!'ó
. Actuellement, le script entier est en cours d'exécution et il ignore ou déclenche ces requêtes car elles sont renvoyées par le serveur sous la forme d'unicode décimal comme ceci: '
. J'ai trouvé comment analyser et convertir en hexadécimal et les charger en python pour les convertir à leurs symboles et je me demande si bash peut faire cette conversion finale nativement. Exemple simple en python:Bash équivalent au littéral de chaîne de Python pour la conversion de chaîne utf
print ur"\u0032" ur"\u0033" ur"\u0040"
imprime
[email protected]
Puis-je obtenir le même résultat dans Bash? J'ai regardé iconv mais je ne pense pas qu'il peut faire ce que je veux, ou plus probablement je ne sais pas comment.
Voici quelques informations pertinentes:
Hex to UTF conversion in Python
Et voici quelques exemples d'entrée-sortie attendue.
Ludwig van Beethoven - 5th Symphony and 6th Symphony ''Pastoral'' - Boston Symphony Orchestra - Charles Munch
Ludwig van Beethoven - 5th Symphony and 6th Symphony ''Pastoral'' - Boston Symphony Orchestra - Charles Munch
АлисА (Alisa) - Мы вместе. ХХ лет (My vmeste XX let)
АлисА (Alisa) - Мы вместе. ХХ лет (My vmeste XX let)
vous ne pouvez pas appeler python ou Perl de ce script bash pour traiter la chaîne? – mykhal
presque fait: 'echo 'А л и с А (Alisa)' | perl -pe 's/& # (\ d +); (? {$ x = sprintf ("% 04x", int ($ 1))})/\ N {U + $ x}/g'' malheureusement, il y a un problème avec la conversion '$ x', de sorte que les caractères unicode sont erronés – mykhal