Codage des caractères

Le
ptilou
Bonjour,


Je recherche une solution pour renomer plusieur fichiers, le problème
sont les espaces, et les caractères accentués qui apparaissent sous
forme de code numérique.

Ex :Abandon%2520de%2520famille.pdf
il me faudrait : abandon de famille.pdf

Je ne connais ni le code qui correspond à %2520 ( ascii ? )
Ni si il faut utiliser rename ou iconv ?

Merci

Ptilou
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
Eric Levenez
Le #759642
Le 18/08/07 16:24, dans

Je recherche une solution pour renomer plusieur fichiers, le problème
sont les espaces, et les caractères accentués qui apparaissent sous
forme de code numérique.

Ex :Abandon%2520de%2520famille.pdf
il me faudrait : abandon de famille.pdf

Je ne connais ni le code qui correspond à %2520 ( ascii ? )


À priori c'est un double encodage. L'espace de ton fichier d'origine est
transformé en code hexa pour encodage d'une URL : "%20". Ensuite ce nom est
encore une fois réencodé de la même façon (sûrement une erreur lié à la
récupération de ce nom) : le % est réencodé en hexa ce qui donne %25. Ton
" " devient après ce double encodage "%2520". Un triple aurait donné
"%252520"...

--
Éric Lévénez -- Unix is not only an OS, it's a way of life.

ptilou
Le #759637
On 18 août, 17:46, Eric Levenez
Le 18/08/07 16:24, dans

Je recherche une solution pour renomer plusieur fichiers, le problème
sont les espaces, et les caractères accentués qui apparaissent sous
forme de code numérique.

Ex :Abandon%2520de%2520famille.pdf
il me faudrait : abandon de famille.pdf

Je ne connais ni le code qui correspond à %2520 ( ascii ? )


À priori c'est un double encodage. L'espace de ton fichier d'origine est
transformé en code hexa pour encodage d'une URL : "%20". Ensuite ce nom est
encore une fois réencodé de la même façon (sûrement une erreur lié à la
récupération de ce nom) : le % est réencodé en hexa ce qui donne %25. Ton
" " devient après ce double encodage "%2520". Un triple aurait donné
"%252520"...



Oui j'ai cherché dans la doc d'apache et n'est rien trouvé, donc j'ai
pensée à un script via iconv, je ne suis même pas sur que le choix de
la commande soit judicieux ...
Une solution, serait très appréciable !

Merci

Ptilou

--
Ab uno disce omues


Jérémy JUST
Le #759636
Le Sun, 19 Aug 2007 09:57:22 -0000,

Ex :Abandon%2520de%2520famille.pdf
L'espace de ton fichier d'origine est transformé en code hexa pour

encodage d'une URL : "%20". Ensuite ce nom est encore une fois
réencodé de la même façon (sûrement une erreur lié à la récupération
de ce nom)
j'ai cherché dans la doc d'apache et n'est rien trouvé



Je ne pense pas que ce soit l'endroit le plus pertinent.


Une solution, serait très appréciable !


$ perl -e '$n=$_=shift;
s/%([A-F0-9]{2})/chr(hex($1))/eig;
s/%([A-F0-9]{2})/chr(hex($1))/eig;
rename $n, $_'
Abandon%2520de%2520famille.pdf


--
Jérémy JUST


ptilou
Le #759635
On 19 août, 12:49, Jérémy JUST
Le Sun, 19 Aug 2007 09:57:22 -0000,

Ex :Abandon%2520de%2520famille.pdf
L'espace de ton fichier d'origine est transformé en code hexa pour

encodage d'une URL : "%20". Ensuite ce nom est encore une fois
réencodé de la même façon (sûrement une erreur lié à la récupération
de ce nom)
j'ai cherché dans la doc d'apache et n'est rien trouvé



Je ne pense pas que ce soit l'endroit le plus pertinent.

Une solution, serait très appréciable !


$ perl -e '$n=$_=shift;
s/%([A-F0-9]{2})/chr(hex($1))/eig;
s/%([A-F0-9]{2})/chr(hex($1))/eig;
rename $n, $_'
Abandon%2520de%2520famille.pdf


Je ne redémarerais même pas un UNIX pour çà !

Ptilou

--
Yon sexy lady, by no, by no ....




Publicité
Poster une réponse
Anonyme