OVH Cloud OVH Cloud

remplacer ~R par un apostrophe (en perl, sed ou awk...)

1 réponse
Avatar
Touns
Bonjour la liste,

j'ai un fichier que je dois regulièrement analyser qui
contient des caractères plutôt particulié :

des ^M pour des retour à la ligne et ~R pour
apostrophe. J'ai reussit à remplacer avec sed les ^M
par rien, mais je n'arrive pas à remplacer les ~M par
des apostrophes :

^M est en faite le caractère \r avec sed, mais je ne
sais pas comment representer ~M. J'ai vu qu'il existe
recode pour transformer des fichiers d'un encodage
vers un autre, mais je ne connais ni l'origine du
codage, ni la destination!


merci pour votre aide!

Antoine.






___________________________________________________________________________
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez cette version sur http://fr.messenger.yahoo.com


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

1 réponse

Avatar
Francois
Le Tue, Sep 06, 2005 à 11:00:07AM +0200, Touns a écrit
Bonjour la liste,

j'ai un fichier que je dois regulièrement analyser qui
contient des caractères plutôt particulié :

des ^M pour des retour à la ligne et ~R pour
apostrophe. J'ai reussit à remplacer avec sed les ^M
par rien, mais je n'arrive pas à remplacer les ~M par
des apostrophes :

^M est en faite le caractère r avec sed, mais je ne
sais pas comment representer ~M. J'ai vu qu'il existe
recode pour transformer des fichiers d'un encodage
vers un autre, mais je ne connais ni l'origine du
codage, ni la destination!



En perl il est possible de mettre dans un pattern le code hexa ou octal d'un
caractère (man perlre). Après avoir fait "cat <fichier> | hd | less" pour
repérer les codes en hexa des caractères à remplacer un petit script perl
(voire un uni-ligne) doit pouvoir faire cela.



merci pour votre aide!

Antoine.






___________________________________________________________________________
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez cette version sur http://fr.messenger.yahoo.com


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact



--
Francois Mescam



--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact