bash encoder contenue variable

Le
prego jérémy
bonjour,

je cherche a encoder simplement le contenu d'une variable

j'ai bien trouvé un tat de choses pour encoder depuis un fichier, mais
rien pour du texte directement dans une variable.

pour l'exemple de convertion
$test contien "français" et il faut que ça sois converti en "fran%E7a=
is"

merci d'avance

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: https://lists.debian.org/5325D6F6.5020302@prego-network.net
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Sébastien NOBILI
Le #26038152
Bonjour,

Le dimanche 16 mars 2014 à 17:53, prego jérémy a écrit :
pour l'exemple de convertion
$test contien "français" et il faut que ça sois converti en "fran%E7ais"



C'est un boulot pour la commande sed.

Par exemple (pas testé) :
test="français"
test=`echo $test | sed s/"ç"/"%E7"/g`

Note au passage que ce genre de manip en shell conduit à utiliser des
sous-shells et des tubes entre commandes. On arrive souvent à un code plus
propre et efficace avec un langage de script plus adapté (Perl, par exemple).

Seb

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
prego jérémy
Le #26038142
Le 16/03/2014 18:39, Sébastien NOBILI a écrit :
Bonjour,

Le dimanche 16 mars 2014 à 17:53, prego jérémy a écrit :

pour l'exemple de convertion
$test contien "français" et il faut que ça sois converti en "fran% E7ais"



C'est un boulot pour la commande sed.

Par exemple (pas testé) :
test="français"
test=`echo $test | sed s/"ç"/"%E7"/g`


j'ai bien pensé a sed, mais vu que ça peut contenir tout un tat d'a utre caractères ça va vite devenir lourd a écrire ...


Note au passage que ce genre de manip en shell conduit à utiliser des
sous-shells et des tubes entre commandes. On arrive souvent à un code plus
propre et efficace avec un langage de script plus adapté (Perl, par e xemple).




jamais utilisé ce langage

jerem

Seb





--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Bzzz
Le #26038132
On Sun, 16 Mar 2014 18:39:42 +0100
Sébastien NOBILI
On arrive souvent à
un code plus propre et efficace avec un langage de script plus
adapté (Perl, par exemple).



Voire, si la VAR est conséquente, passer par un fichier temporaire
et un appel system de iconv.

--
Dahns : 1) J'ai une collection de près de 1 000 mangas :D
Dahns : 2) J'ai une armure médiévale et des épées de ta ré :D
Dahns : 3) Et j'écris un livre ! Mouhahaha !!
Adrien : ... Toujours pas de copine, Dahns ?
Dahns : Je te méprise.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Pierre Malard
Le #26038192
--Apple-Mail=_6E5C434F-D6D5-4988-B54D-7F1D2F52182E
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
charset=windows-1252

Effectivement le shell peut être lourd mais, si on ne souhaite pas, on ne peut pas, on ne connait pas assez Perl, awk ou autre, il suffit d'écrire un petit script de translation qu'on appellera ensuite dans un pipe sur sed comme ça :
# echo "mon texte accentué" | sed -f translation.sed

avec, dans "translation.sed", une ligne par translation comme ceci :
...
s/ç/%E7/g
s/à/%E8/g
....

Dans ce cas, on enchaîne pas de shells les uns dans les autres. Donc, on ne charge absolument pas sa machine. C'est simplement sed qui utilise un fichier de commandes externes. On peut garder "translation.sed" si on veut pouvoir le ré-utiliser.

Voilà ce que ça donne :
$ echo "Français à traduire" | sed -f /tmp/translation.sed
Fran%E7ais %E8 traduire

La table complète des caractères Unicode peut se trouver ici :
http://www.w3.org/TR/MathML2/bycodes.html

Cordialement

Le 16 mars 2014 à 18:45, prego jérémy


Le 16/03/2014 18:39, Sébastien NOBILI a écrit :
Bonjour,

Le dimanche 16 mars 2014 à 17:53, prego jérémy a écrit :

pour l'exemple de convertion
$test contien "français" et il faut que ça sois converti en "fran%E7ais"



C'est un boulot pour la commande sed.

Par exemple (pas testé) :
test="français"
test=`echo $test | sed s/"ç"/"%E7"/g`




j'ai bien pensé a sed, mais vu que ça peut contenir tout un tat d'autre caractères ça va vite devenir lourd a écrire ...




Note au passage que ce genre de manip en shell conduit à utiliser des
sous-shells et des tubes entre commandes. On arrive souvent à un code plus
propre et efficace avec un langage de script plus adapté (Perl, par exemple).




jamais utilisé ce langage

jerem

Seb





--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/




--
Pierre Malard

« Le socialisme vrai ne veut pas renverser l'ordre des classes ;
il veut fondre les classes dans une organisation du travail qui
sera meilleure pour tous »
Jean Jaures - "Les misères du patronat" - 1890
_,'| _.-''``-...___..--';)
/_ '. __..-' , ,--...--'''
< .`--''' ` /'
`-';' ; ; ;
__...--'' ___...--_..' .;.'
(,__....----''' (,..--''

perl -e '$_=q#: 3| 5-,3-3,2-: 3/,`.'"'"'`'"'"' 5-. ;-;;,-: |,A- ) )-,_. , ( `'"'"'-'"'"': '"'"'-3'"'"'2(-/--'"'"' `-'"'"'-): 22PLM::#;y#:#n#;s#(D)(d+)#$1x$2#ge;print'
- --> Ce message n’engage que son auteur <--


--Apple-Mail=_6E5C434F-D6D5-4988-B54D-7F1D2F52182E
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
filename=signature.asc
Content-Type: application/pgp-signature;
name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org

iQIcBAEBCgAGBQJTJe1oAAoJELzRDw+wKgIyN74QAIvBSmcxSQPsN+hC875yIgfP
6zQH2jqfWa49JkO3fRBfRjR01lofh2MDYn4DHWoG5Gr9B2n9bu5GC17SzKqvIbHK
GyreGQ1Gcla0hrGyIHXZk2yZ7R/NLxHjN3daDoziTItKOSag0D1lfrNHCd3+eaRD
7cGzDhbBR+TjyqRfdgufcEgxSycOzH+uTlMKzLVp5taH2D4Oq+qDI8XgGGmaXfVM
u79KCpbtFF0v1HoI9of37G/loYUD1bxTUbNPnWIdToDYCvJTAdK5U26bhh26r6p6
Y/aUL0mi6c0oaa8tx3WKFih2k1kDOmEE2uehZ3Tk1J0PQ66NHwjLKl5jdKn+JdEx
luPxDVngsr+GXq+ZcMu5tTyNaQbZamMZkNK5Yb4Cd6WgX9SCeTmgLN/tYqdd+oEW
joLY2rQKJPxO2Kl2SkPvltiX3CA5PBBwJhDDBzzI2YjnADeG2OgECdJWRGTXukFG
oE5eOu9jcMZUdcgY4QIIik9JrAkDWr6l8dW5AA0RLvQo71W3QCOB8Mvm9DtBIOi8
l7a177RX3iZ5MPqCU2M2KYpnrgU+OTCVIb4WyEV84IBH//Kaezs7eYRmN5scSs/t
mdNz+WoTXc7mF65c05xURLfGSy+NM2vGkrL6F67Iv+2J991v3RMT74I+zrpF331c
gmrEro3wPAAqxOdoSZQf
=Q3p9
-----END PGP SIGNATURE-----

--Apple-Mail=_6E5C434F-D6D5-4988-B54D-7F1D2F52182E--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Jérôme
Le #26038922
Le Sun, 16 Mar 2014 18:45:27 +0100,
prego jérémy
jamais utilisé ce langage

jerem



Il n'est jamais trop tard pour commencer ;)

N'importe quel langage du même type, rapide à mettre en œuvr e : python,
lua, ruby...

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: https://lists.debian.org/
Publicité
Poster une réponse
Anonyme