|
View:
New views
20 Messages
—
Rating Filter:
Alert me
|
| < Prev | 1 - 2 | Next > |
|
|
[debutant] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationaprès quelques passages dans différents encodages, dont cet extraordinaire unicode qui permet à tous d'exprimer sa culture des langues orientales et autres hiéroglyphes aztéco mongoles, il arrive que des noms de fichiers deviennent subitement illisibles et affichent des points d'interrogation là où il devrait y avoir un caractère généralement accentué, accentuant ainsi profondément l'interrogation de l'observateur qui finit par se demander, éventuellement en hébreu ou en coréen, mais qu'y avait-il donc là?! voici un début de script avec quelques correspondances, car tous les points d'interrogation ne sont pas égaux! ils signifient juste que le caractère n'est pas imprimable, mais leur valeur héxadécimale permet de les rattacher à la bonne valeur ascii. le script est très incomplet, aussi, si vous trouvez d'autres correspondances, merci de compléter. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #!/bin/bash #shitrepair while [[ $(ls) =~ $'\xe9' ]]; do rename $'\xe9' é *; done while [[ $(ls) =~ $'\xe8' ]]; do rename $'\xe8' è *; done while [[ $(ls) =~ $'\xf1' ]]; do rename $'\xf1' ñ *; done while [[ $(ls) =~ $'\xf6' ]]; do rename $'\xf6' ö *; done while [[ $(ls) =~ $'\xee' ]]; do rename $'\xee' î *; done while [[ $(ls) =~ $'\xf3' ]]; do rename $'\xf3' ó *; done while [[ $(ls) =~ $'\xef' ]]; do rename $'\xef' ï *; done while [[ $(ls) =~ $'\xe0' ]]; do rename $'\xe0' à *; done while [[ $(ls) =~ $'\xed' ]]; do rename $'\xed' í *; done while [[ $(ls) =~ $'\xc0' ]]; do rename $'\xc0' Á *; done while [[ $(ls) =~ $'\xea' ]]; do rename $'\xea' ê *; done while [[ $(ls) =~ $'\xe7' ]]; do rename $'\xe7' ç *; done while [[ $(ls) =~ $'\xc7' ]]; do rename $'\xc7' Ç *; done while [[ $(ls) =~ $'\xfc' ]]; do rename $'\xfc' ü *; done while [[ $(ls) =~ $'\xdc' ]]; do rename $'\xdc' Ü *; done while [[ $(ls) =~ $'\xcf' ]]; do rename $'\xcf' Ï *; done while [[ $(ls) =~ $'\xfb' ]]; do rename $'\xfb' û *; done exit 0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ il corrige les noms de fichiers dans le répertoire courant. je l'ai nommé shitrepair parce que j'étais en colère, mais on peut lui donner le nom de sa belle-mère si on est d'humeur badine ... bye jipe ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe dimanche 11 octobre 2009 17:10:27 jipe, vous avez écrit :
> il corrige les noms de fichiers dans le répertoire courant Moi, c'est sur le contenu des fichiers que j'ai ce problème. Est-il possible d'adapter ce script pour corriger le contenu ? -- Joël ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe Mon, 12 Oct 2009 11:14:45 +0200,
joel tarlao <joeltarlao@...> a écrit : > Le dimanche 11 octobre 2009 17:10:27 jipe, vous avez écrit : > > il corrige les noms de fichiers dans le répertoire courant > > Moi, c'est sur le contenu des fichiers que j'ai ce problème. > > Est-il possible d'adapter ce script pour corriger le contenu ? > oui en utilisant sed, par exemple: sed -i 's/\x09/é/g' fichier va corriger tous les points d'interrogations correspondant à des é dans fichier. ça devrait donner ça: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #!/bin/bash #shitrepair_file sed -i 's/\xe9/é/g' "$@" sed -i 's/\xe8/è/g' "$@" sed -i 's/\xf1/ñ/g' "$@" sed -i 's/\xf6/ö/g' "$@" sed -i 's/\xee/î/g' "$@" sed -i 's/\xf3/ó/g' "$@" sed -i 's/\xef/ï/g' "$@" sed -i 's/\xe0/à/g' "$@" sed -i 's/\xed/í/g' "$@" sed -i 's/\xc0/Á/g' "$@" sed -i 's/\xea/ê/g' "$@" sed -i 's/\xe7/ç/g' "$@" sed -i 's/\xc7/Ç/g' "$@" sed -i 's/\xfc/ü/g' "$@" sed -i 's/\xdc/Ü/g' "$@" sed -i 's/\xcf/Ï/g' "$@" sed -i 's/\xfb/û/g' "$@" exit 0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ tu le lances avec shitrepair_file le_fichier_à_réparer bye jipe PS: s'il reste des points d'interrogation essaye de voir avec hexedit par exemple à quel valeur héxa ils correspondent et le signe qui devrait être à la place et fait passer pour compléter :) ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe lundi 12 octobre 2009 17:51:59 jipe, vous avez écrit :
> tu le lances avec shitrepair_file le_fichier_à_réparer Merci beaucoup, jipe, mais... Contenu du fichier d'origine : Guide avanc�d'�riture des scripts Bash http://www.mankira.com/modules/bash/index.html http://www.c-sait.net/cours/scripts.php Pr�aration Les variables sp�iales R�liser des tests Les structures de contr�e Manipulation des param�res Après passage à la moulinette : Guide avancï��d'ï��riture des scripts Bash http://www.mankira.com/modules/bash/index.html http://www.c-sait.net/cours/scripts.php Prï��aration Les variables spï��iales Rï��liser des tests Les structures de contrï��e Manipulation des paramï��res -- Joël ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] rÃÂéparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe Mon, 12 Oct 2009 18:16:38 +0200,
joel tarlao <joeltarlao@...> a écrit : > Le lundi 12 octobre 2009 17:51:59 jipe, vous avez écrit : > > tu le lances avec shitrepair_file le_fichier_à_réparer > > Merci beaucoup, jipe, mais... > > Contenu du fichier d'origine : > > Guide avanc�d'�riture des scripts Bash > http://www.mankira.com/modules/bash/index.html > http://www.c-sait.net/cours/scripts.php > Pr�aration > Les variables sp�iales > R�liser des tests > Les structures de contr�e > Manipulation des param�res > > Après passage à la moulinette : > > Guide avancï��d'ï��riture des scripts Bash > http://www.mankira.com/modules/bash/index.html > http://www.c-sait.net/cours/scripts.php > Prï��aration > Les variables spï��iales > Rï��liser des tests > Les structures de contrï��e > Manipulation des paramï��res > qu'il s'agit d'un fichier texte unicode UTF8, je le vois tel que tu me le montres dans gedit supportant l'utf8, sur un système dont les locales sont fr_FR.UTF-8 et hexedit me montre 3 caractères EF BF BD se répétant pour remplacer des é, des ô et des è, avec à chaque fois effacement d'un caractère d'origine, par exemple le t de paramètre à la fin ou le c d'écriture au début. autant te dire que ceci me laisse très perplexe ... ce fichier n'aurait-il pas déjà subit un moulinette iso vers utf qui l'aurait dénaturé? est-ce que ça fait la même chose à tous tes fichiers ayant des losanges avec point d'interrogation? (fais des sauvegardes!) bye jipe ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] rÃÂéparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe lundi 12 octobre 2009 20:14:48 jipe, vous avez écrit :
> après copie de ton texte original dans un fichier, file me dit qu'il > qu'il s'agit d'un fichier texte unicode UTF8, je le vois tel que tu me > le montres dans gedit supportant l'utf8, sur un système > dont les locales sont fr_FR.UTF-8 et hexedit me montre 3 > caractères EF BF BD se répétant pour remplacer des é, des ô et des è, > avec à chaque fois effacement d'un caractère d'origine, par exemple le > t de paramètre à la fin ou le c d'écriture au début. autant te dire que > ceci me laisse très perplexe ... ce fichier n'aurait-il pas déjà subit > un moulinette iso vers utf qui l'aurait dénaturé? Maintenant que tu me le dis, effectivement, il me semble que j'avais déjà essayé, à l'époque ou Mandriva est passé à UTF-8 par défaut. J'avais dû utiliser (mal, semble-t-il) iconv ou convmv... > est-ce que ça fait la > même chose à tous tes fichiers ayant des losanges avec point > d'interrogation? Tous les essais que je viens de faire donnent le même résultat. Mais tous ces fichiers doivent dater de cette époque... Tant pis. En tout cas, je te remercie, jipe. > (fais des sauvegardes!) Pas de problème, je fais ces essais sur des copies... -- Joël ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationjipe a écrit :
> après quelques passages dans différents encodages, dont cet > extraordinaire unicode qui permet à tous d'exprimer sa culture des > langues orientales et autres hiéroglyphes aztéco mongoles, il arrive > que des noms de fichiers deviennent subitement illisibles et affichent > des points d'interrogation là où il devrait y avoir un caractère > généralement accentué, accentuant ainsi profondément l'interrogation de > l'observateur qui finit par se demander, éventuellement en hébreu ou > en coréen, mais qu'y avait-il donc là?! > voici un début de script avec quelques correspondances, car tous les > points d'interrogation ne sont pas égaux! ils signifient juste que le > caractère n'est pas imprimable, mais leur valeur héxadécimale permet de > les rattacher à la bonne valeur ascii. le script est très incomplet, > aussi, si vous trouvez d'autres correspondances, merci de compléter. > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > #!/bin/bash > #shitrepair > > while [[ $(ls) =~ $'\xe9' ]]; do rename $'\xe9' é *; done > while [[ $(ls) =~ $'\xe8' ]]; do rename $'\xe8' è *; done > while [[ $(ls) =~ $'\xf1' ]]; do rename $'\xf1' ñ *; done > while [[ $(ls) =~ $'\xf6' ]]; do rename $'\xf6' ö *; done > while [[ $(ls) =~ $'\xee' ]]; do rename $'\xee' î *; done > while [[ $(ls) =~ $'\xf3' ]]; do rename $'\xf3' ó *; done > while [[ $(ls) =~ $'\xef' ]]; do rename $'\xef' ï *; done > while [[ $(ls) =~ $'\xe0' ]]; do rename $'\xe0' à *; done > while [[ $(ls) =~ $'\xed' ]]; do rename $'\xed' í *; done > while [[ $(ls) =~ $'\xc0' ]]; do rename $'\xc0' Á *; done > while [[ $(ls) =~ $'\xea' ]]; do rename $'\xea' ê *; done > while [[ $(ls) =~ $'\xe7' ]]; do rename $'\xe7' ç *; done > while [[ $(ls) =~ $'\xc7' ]]; do rename $'\xc7' Ç *; done > while [[ $(ls) =~ $'\xfc' ]]; do rename $'\xfc' ü *; done > while [[ $(ls) =~ $'\xdc' ]]; do rename $'\xdc' Ü *; done > while [[ $(ls) =~ $'\xcf' ]]; do rename $'\xcf' Ï *; done > while [[ $(ls) =~ $'\xfb' ]]; do rename $'\xfb' û *; done > > exit 0 > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > il corrige les noms de fichiers dans le répertoire courant. je l'ai > nommé shitrepair parce que j'étais en colère, mais on peut lui donner > le nom de sa belle-mère si on est d'humeur badine ... > > bye > jipe > > > Je l'ai un peu complété. Il ne reste plus qu'a le rendre récursif et la cela dépasse mes compétences. Yves #!/bin/bash #shitrepair while [[ $(ls) =~ $'\xc0' ]]; do rename $'\xc0' À *; done while [[ $(ls) =~ $'\xc1' ]]; do rename $'\xc1' Á *; done while [[ $(ls) =~ $'\xc2' ]]; do rename $'\xc2' Â *; done while [[ $(ls) =~ $'\xc3' ]]; do rename $'\xc3' Ã *; done while [[ $(ls) =~ $'\xc4' ]]; do rename $'\xc4' Ä *; done while [[ $(ls) =~ $'\xc5' ]]; do rename $'\xc5' Å *; done while [[ $(ls) =~ $'\xc6' ]]; do rename $'\xc6' Æ *; done while [[ $(ls) =~ $'\xc7' ]]; do rename $'\xc7' Ç *; done while [[ $(ls) =~ $'\xc8' ]]; do rename $'\xc8' È *; done while [[ $(ls) =~ $'\xc9' ]]; do rename $'\xc9' É *; done while [[ $(ls) =~ $'\xca' ]]; do rename $'\xca' Ê *; done while [[ $(ls) =~ $'\xcb' ]]; do rename $'\xcb' Ë *; done while [[ $(ls) =~ $'\xcc' ]]; do rename $'\xcc' Ì *; done while [[ $(ls) =~ $'\xcd' ]]; do rename $'\xcd' Í *; done while [[ $(ls) =~ $'\xce' ]]; do rename $'\xce' Î *; done while [[ $(ls) =~ $'\xcf' ]]; do rename $'\xcf' Ï *; done while [[ $(ls) =~ $'\xd0' ]]; do rename $'\xd0' Ð *; done while [[ $(ls) =~ $'\xd1' ]]; do rename $'\xd1' Ñ *; done while [[ $(ls) =~ $'\xd2' ]]; do rename $'\xd2' Ò *; done while [[ $(ls) =~ $'\xd3' ]]; do rename $'\xd3' Ó *; done while [[ $(ls) =~ $'\xd4' ]]; do rename $'\xd4' Ô *; done while [[ $(ls) =~ $'\xd5' ]]; do rename $'\xd5' Õ *; done while [[ $(ls) =~ $'\xd6' ]]; do rename $'\xd6' Ö *; done while [[ $(ls) =~ $'\xd8' ]]; do rename $'\xd8' Ø *; done while [[ $(ls) =~ $'\xd9' ]]; do rename $'\xd9' Ù *; done while [[ $(ls) =~ $'\xda' ]]; do rename $'\xda' Ú *; done while [[ $(ls) =~ $'\xdb' ]]; do rename $'\xdb' Û *; done while [[ $(ls) =~ $'\xdc' ]]; do rename $'\xdc' Ü *; done while [[ $(ls) =~ $'\xdd' ]]; do rename $'\xdd' Ý *; done while [[ $(ls) =~ $'\xde' ]]; do rename $'\xde' Þ *; done while [[ $(ls) =~ $'\xdf' ]]; do rename $'\xdf' ß *; done while [[ $(ls) =~ $'\xe0' ]]; do rename $'\xe0' à *; done while [[ $(ls) =~ $'\xe1' ]]; do rename $'\xe1' á *; done while [[ $(ls) =~ $'\xe2' ]]; do rename $'\xe2' â *; done while [[ $(ls) =~ $'\xe3' ]]; do rename $'\xe3' ã *; done while [[ $(ls) =~ $'\xe4' ]]; do rename $'\xe4' ä *; done while [[ $(ls) =~ $'\xe5' ]]; do rename $'\xe5' å *; done while [[ $(ls) =~ $'\xe6' ]]; do rename $'\xe6' æ *; done while [[ $(ls) =~ $'\xe7' ]]; do rename $'\xe7' ç *; done while [[ $(ls) =~ $'\xe8' ]]; do rename $'\xe8' è *; done while [[ $(ls) =~ $'\xe9' ]]; do rename $'\xe9' é *; done while [[ $(ls) =~ $'\xea' ]]; do rename $'\xea' ê *; done while [[ $(ls) =~ $'\xeb' ]]; do rename $'\xeb' ë *; done while [[ $(ls) =~ $'\xec' ]]; do rename $'\xec' ì *; done while [[ $(ls) =~ $'\xed' ]]; do rename $'\xed' í *; done while [[ $(ls) =~ $'\xee' ]]; do rename $'\xee' î *; done while [[ $(ls) =~ $'\xef' ]]; do rename $'\xef' ï *; done while [[ $(ls) =~ $'\xf0' ]]; do rename $'\xf0' ð *; done while [[ $(ls) =~ $'\xf1' ]]; do rename $'\xf1' ñ *; done while [[ $(ls) =~ $'\xf2' ]]; do rename $'\xf2' ò *; done while [[ $(ls) =~ $'\xf3' ]]; do rename $'\xf3' ó *; done while [[ $(ls) =~ $'\xf4' ]]; do rename $'\xf4' ô *; done while [[ $(ls) =~ $'\xf5' ]]; do rename $'\xf5' õ *; done while [[ $(ls) =~ $'\xf6' ]]; do rename $'\xf6' ö *; done while [[ $(ls) =~ $'\xf8' ]]; do rename $'\xf8' ø *; done while [[ $(ls) =~ $'\xf9' ]]; do rename $'\xf9' ù *; done while [[ $(ls) =~ $'\xfa' ]]; do rename $'\xfa' ú *; done while [[ $(ls) =~ $'\xfb' ]]; do rename $'\xfb' û *; done while [[ $(ls) =~ $'\xfc' ]]; do rename $'\xfc' ü *; done while [[ $(ls) =~ $'\xfd' ]]; do rename $'\xfd' ý *; done while [[ $(ls) =~ $'\xfe' ]]; do rename $'\xfe' þ *; done while [[ $(ls) =~ $'\xff' ]]; do rename $'\xff' ÿ *; done exit 0 ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationYves de Brauer a écrit :
> jipe a écrit : >> après quelques passages dans différents encodages, dont cet >> extraordinaire unicode qui permet à tous d'exprimer sa culture des >> langues orientales et autres hiéroglyphes aztéco mongoles, il arrive >> que des noms de fichiers deviennent subitement illisibles et affichent >> des points d'interrogation là où il devrait y avoir un caractère >> généralement accentué, accentuant ainsi profondément l'interrogation de >> l'observateur qui finit par se demander, éventuellement en hébreu ou >> en coréen, mais qu'y avait-il donc là?! voici un début de script avec >> quelques correspondances, car tous les >> points d'interrogation ne sont pas égaux! ils signifient juste que le >> caractère n'est pas imprimable, mais leur valeur héxadécimale permet de >> les rattacher à la bonne valeur ascii. le script est très incomplet, >> aussi, si vous trouvez d'autres correspondances, merci de compléter. >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> #!/bin/bash >> #shitrepair >> >> while [[ $(ls) =~ $'\xe9' ]]; do rename $'\xe9' é *; done >> while [[ $(ls) =~ $'\xfb' ]]; do rename $'\xfb' û *; done >> >> exit 0 >> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> il corrige les noms de fichiers dans le répertoire courant. je l'ai >> nommé shitrepair parce que j'étais en colère, mais on peut lui donner >> le nom de sa belle-mère si on est d'humeur badine ... >> >> bye >> jipe >> >> > Merci Jipe pour ce script qui va m'être bien utile (problème avec un DD > windows qui a rendu l'âme). > > Je l'ai un peu complété. > > Il ne reste plus qu'a le rendre récursif et la cela dépasse mes > compétences. > > Yves > initial (que je n'ai d'ailleurs pas complètement compris :o( ). Il semble avoir bien fonctionné dans mon cas. Nota: il ne faut pas avoir déjà modifier quelques nom de fichiers à la main ou exécuter deux fois le script sur la même arborescence. ------------------------------------------------------------ #!/bin/bash #shitrepair # Remplacement des caractères (script de Jipe) function replace { while [[ $(ls) =~ $'\xc0' ]]; do rename $'\xc0' À *; done while [[ $(ls) =~ $'\xc1' ]]; do rename $'\xc1' Á *; done while [[ $(ls) =~ $'\xc2' ]]; do rename $'\xc2' Â *; done while [[ $(ls) =~ $'\xc3' ]]; do rename $'\xc3' Ã *; done while [[ $(ls) =~ $'\xc4' ]]; do rename $'\xc4' Ä *; done while [[ $(ls) =~ $'\xc5' ]]; do rename $'\xc5' Å *; done while [[ $(ls) =~ $'\xc6' ]]; do rename $'\xc6' Æ *; done while [[ $(ls) =~ $'\xc7' ]]; do rename $'\xc7' Ç *; done while [[ $(ls) =~ $'\xc8' ]]; do rename $'\xc8' È *; done while [[ $(ls) =~ $'\xc9' ]]; do rename $'\xc9' É *; done while [[ $(ls) =~ $'\xca' ]]; do rename $'\xca' Ê *; done while [[ $(ls) =~ $'\xcb' ]]; do rename $'\xcb' Ë *; done while [[ $(ls) =~ $'\xcc' ]]; do rename $'\xcc' Ì *; done while [[ $(ls) =~ $'\xcd' ]]; do rename $'\xcd' Í *; done while [[ $(ls) =~ $'\xce' ]]; do rename $'\xce' Î *; done while [[ $(ls) =~ $'\xcf' ]]; do rename $'\xcf' Ï *; done while [[ $(ls) =~ $'\xd0' ]]; do rename $'\xd0' Ð *; done while [[ $(ls) =~ $'\xd1' ]]; do rename $'\xd1' Ñ *; done while [[ $(ls) =~ $'\xd2' ]]; do rename $'\xd2' Ò *; done while [[ $(ls) =~ $'\xd3' ]]; do rename $'\xd3' Ó *; done while [[ $(ls) =~ $'\xd4' ]]; do rename $'\xd4' Ô *; done while [[ $(ls) =~ $'\xd5' ]]; do rename $'\xd5' Õ *; done while [[ $(ls) =~ $'\xd6' ]]; do rename $'\xd6' Ö *; done while [[ $(ls) =~ $'\xd8' ]]; do rename $'\xd8' Ø *; done while [[ $(ls) =~ $'\xd9' ]]; do rename $'\xd9' Ù *; done while [[ $(ls) =~ $'\xda' ]]; do rename $'\xda' Ú *; done while [[ $(ls) =~ $'\xdb' ]]; do rename $'\xdb' Û *; done while [[ $(ls) =~ $'\xdc' ]]; do rename $'\xdc' Ü *; done while [[ $(ls) =~ $'\xdd' ]]; do rename $'\xdd' Ý *; done while [[ $(ls) =~ $'\xde' ]]; do rename $'\xde' Þ *; done while [[ $(ls) =~ $'\xdf' ]]; do rename $'\xdf' ß *; done while [[ $(ls) =~ $'\xe0' ]]; do rename $'\xe0' à *; done while [[ $(ls) =~ $'\xe1' ]]; do rename $'\xe1' á *; done while [[ $(ls) =~ $'\xe2' ]]; do rename $'\xe2' â *; done while [[ $(ls) =~ $'\xe3' ]]; do rename $'\xe3' ã *; done while [[ $(ls) =~ $'\xe4' ]]; do rename $'\xe4' ä *; done while [[ $(ls) =~ $'\xe5' ]]; do rename $'\xe5' å *; done while [[ $(ls) =~ $'\xe6' ]]; do rename $'\xe6' æ *; done while [[ $(ls) =~ $'\xe7' ]]; do rename $'\xe7' ç *; done while [[ $(ls) =~ $'\xe8' ]]; do rename $'\xe8' è *; done while [[ $(ls) =~ $'\xe9' ]]; do rename $'\xe9' é *; done while [[ $(ls) =~ $'\xea' ]]; do rename $'\xea' ê *; done while [[ $(ls) =~ $'\xeb' ]]; do rename $'\xeb' ë *; done while [[ $(ls) =~ $'\xec' ]]; do rename $'\xec' ì *; done while [[ $(ls) =~ $'\xed' ]]; do rename $'\xed' í *; done while [[ $(ls) =~ $'\xee' ]]; do rename $'\xee' î *; done while [[ $(ls) =~ $'\xef' ]]; do rename $'\xef' ï *; done while [[ $(ls) =~ $'\xf0' ]]; do rename $'\xf0' ð *; done while [[ $(ls) =~ $'\xf1' ]]; do rename $'\xf1' ñ *; done while [[ $(ls) =~ $'\xf2' ]]; do rename $'\xf2' ò *; done while [[ $(ls) =~ $'\xf3' ]]; do rename $'\xf3' ó *; done while [[ $(ls) =~ $'\xf4' ]]; do rename $'\xf4' ô *; done while [[ $(ls) =~ $'\xf5' ]]; do rename $'\xf5' õ *; done while [[ $(ls) =~ $'\xf6' ]]; do rename $'\xf6' ö *; done while [[ $(ls) =~ $'\xf8' ]]; do rename $'\xf8' ø *; done while [[ $(ls) =~ $'\xf9' ]]; do rename $'\xf9' ù *; done while [[ $(ls) =~ $'\xfa' ]]; do rename $'\xfa' ú *; done while [[ $(ls) =~ $'\xfb' ]]; do rename $'\xfb' û *; done while [[ $(ls) =~ $'\xfc' ]]; do rename $'\xfc' ü *; done while [[ $(ls) =~ $'\xfd' ]]; do rename $'\xfd' ý *; done while [[ $(ls) =~ $'\xfe' ]]; do rename $'\xfe' þ *; done while [[ $(ls) =~ $'\xff' ]]; do rename $'\xff' ÿ *; done } # Mémorisation du répertoire d'origine pwd=`pwd` # Cherche tous les répertoires avec find . -type d # Le tri avec sort -r permet de traiter les sous-répertoires avant les # répertoires parents car ils sont susceptibles de changer de nom # Lecture et affichage une par une des lignes triée à l'envers avec : # cat < $fichier | read ligne find . -type d -exec echo '{}' \; | sort -r | while true do read dossier if [ "$dossier" = "" ]; then break; fi echo "traitement du dossier --->" $dossier cd "$dossier" # traitement replace # retour au répertoire d'origine cd "$pwd" done echo "code de sortie : "$? ------------------------------------------------------------ ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe Fri, 06 Nov 2009 16:03:04 +0100,
Yves de Brauer <ydebx1@...> a écrit : > > Nota: il ne faut pas avoir déjà modifier quelques nom de fichiers à > la main ou exécuter deux fois le script sur la même arborescence. > oui, j'allais le dire! et j'aurais même du apporter un correctif à mon post d'origine! l'unicode encode sur plusieurs bits, ce qui peut entraîner des effets "indésirables" si un caractère unicode contient un bit ayant une correspondance en iso avec ceux qu'on transforme. ça plante!!! pour corriger ça, il faut laisser de coté les fichiers contenant déjà des caractères unicodes, et transformer les autres en une seule fois, fichier par fichier. l'outil qui permet ça est tr. j'ai donc commis un script en essayant de tirer parti de ces constatations. il contient une fonction récursive avec -r. c'est une récursion qui va au bout de chaque branche de l'arbre récursif avant d'opérer, ce qui permet de ne pas buter sur un nom de répertoire qu'on viendrait de transformer, comme ça peut arriver avec find. j'ai exploité les codes hexa que tu as trouvé. merci d'avoir complété. le script est là: http://filebin.ca/pyzfro bye jipe ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
[debutant] Gnome + compiz = surchauffeSalut,
Je me réponds à moi même pour mon problème de surchauffe : le fautif est compiz. J'utilise la version 0.8.4 de compiz et je constate qu'en l'activant le processeur devient complètement dingue. Les quatre coeurs de mon processeur montent jusqu'à 35 voire 45 % d'occupation processeur. C'est énorme car le ventilateur fait un bruit pas possible pour essayer de refroidir tout ce beau monde. Je crois qu'il ne me reste qu'à attendre une nouvelle version de compiz qui corrige ce problème :-( Je réitère pour ceux qui ont un portable ou notebook, s'ils utilisent gnome et qu'ils constatent le phénomène de chauffe, il suffit de désactiver compiz pour s'éviter des soucis. Bye Yvep ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationjipe a écrit :
> Le Fri, 06 Nov 2009 16:03:04 +0100, > Yves de Brauer <ydebx1@...> a écrit : > > >> Nota: il ne faut pas avoir déjà modifier quelques nom de fichiers à >> la main ou exécuter deux fois le script sur la même arborescence. >> > > oui, j'allais le dire! et j'aurais même du apporter un > correctif à mon post d'origine! l'unicode encode sur plusieurs bits, ce > qui peut entraîner des effets "indésirables" si un caractère unicode > contient un bit ayant une correspondance en iso avec ceux qu'on > transforme. ça plante!!! > > pour corriger ça, il faut laisser de coté les fichiers contenant déjà > des caractères unicodes, et transformer les autres en une seule fois, > fichier par fichier. l'outil qui permet ça est tr. j'ai donc commis un > script en essayant de tirer parti de ces constatations. il contient une > fonction récursive avec -r. c'est une récursion qui va au bout de > chaque branche de l'arbre récursif avant d'opérer, ce qui permet de ne > pas buter sur un nom de répertoire qu'on viendrait de transformer, > comme ça peut arriver avec find. j'ai exploité les codes hexa que tu as > trouvé. merci d'avoir complété. le script est là: > > http://filebin.ca/pyzfro > > > bye > jipe > > J'ai appliqué ton script sur mon jeu de test. Il y a un problème, les répertoires sont renommés en fonction de leur contenu !? (liste des fichiers) @+ Yves ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationjipe a écrit :
> Le Fri, 06 Nov 2009 16:03:04 +0100, > Yves de Brauer <ydebx1@...> a écrit : > > >> Nota: il ne faut pas avoir déjà modifier quelques nom de fichiers à >> la main ou exécuter deux fois le script sur la même arborescence. >> > > oui, j'allais le dire! et j'aurais même du apporter un > correctif à mon post d'origine! l'unicode encode sur plusieurs bits, ce > qui peut entraîner des effets "indésirables" si un caractère unicode > contient un bit ayant une correspondance en iso avec ceux qu'on > transforme. ça plante!!! > > pour corriger ça, il faut laisser de coté les fichiers contenant déjà > des caractères unicodes, et transformer les autres en une seule fois, > fichier par fichier. l'outil qui permet ça est tr. j'ai donc commis un > script en essayant de tirer parti de ces constatations. il contient une > fonction récursive avec -r. c'est une récursion qui va au bout de > chaque branche de l'arbre récursif avant d'opérer, ce qui permet de ne > pas buter sur un nom de répertoire qu'on viendrait de transformer, > comme ça peut arriver avec find. j'ai exploité les codes hexa que tu as > trouvé. merci d'avoir complété. le script est là: > > http://filebin.ca/pyzfro > > > bye > jipe > while [[ $(ls) =~ $'\xb0' ]]; do rename $'\xb0' ° *; done Du coup parmi tous les codes que j'ai donnés il y en a probablement qui ne fonctionnent pas non plus, mais je n'en ai pas rencontré d'occurrence dans mon cas. J'ai enfin récupéré mes données avec le script que j'avais modifié (j'ai du résoudre à la main les quelques cas avec les codes qui ont posé problème). Yves ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] Gnome + compiz = surchauffeLe 06/11/09, yvep a écrit :
> Je réitère pour ceux qui ont un portable ou notebook, s'ils utilisent > gnome et qu'ils constatent le phénomène de chauffe, il suffit de > désactiver compiz pour s'éviter des soucis. En même temps, ça ne me serait pas venu à l'idée de faire ça ;-))) Vu la façon dont "linux" bouffe la batterie... -- Christophe [ o ] http://www.ipernity.com/doc/chat-loupe ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] Gnome + compiz = surchauffe> Salut,
Avec un simple athlon il monte au maximum lors de l'utilisation des effets cube
> > Je me réponds à moi même pour mon problème de surchauffe : le fautif est > compiz. J'utilise la version 0.8.4 de compiz et je constate qu'en > l'activant le processeur devient complètement dingue. > Les quatre coeurs de mon processeur montent jusqu'à 35 voire 45 % > d'occupation processeur. C'est énorme car le ventilateur fait un bruit > pas possible pour essayer de refroidir tout ce beau monde. > > Je crois qu'il ne me reste qu'à attendre une nouvelle version de compiz > qui corrige ce problème :-( > Je réitère pour ceux qui ont un portable ou notebook, s'ils utilisent > gnome et qu'ils constatent le phénomène de chauffe, il suffit de > désactiver compiz pour s'éviter des soucis. > > Bye Yvep et autre à 16% d'occupation cpu et redescend immédiatement à 0; Cependant je trouve aussi que c'est déjà trop étant donné qu'on nous quand même bassiné sur le fait que ces programmes utilisaient les capacités et la mémoire de la carte graphique... et que l'on constate q'ils bouffent énormément de temps cpu. Quand aux mutlicors je ne suis pas du tout certain qu'il soient bien gérés par aucun OS, ça me fait penser au 64 bits qui en fait est largement sous exploité par les programmes...En fait je suis même certain qu'il existe un énorme hiatus entre les fabricants de matériel, leur com et la réalité du développement des logciels et plus exactement des OS. http://www.cnetfrance.fr/produits/micro-les-processeurs-multiplient-les- coeurs-pour-quoi-faire-39369165.htm -- A. Salaün ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe Sat, 07 Nov 2009 06:54:19 +0100,
Yves de Brauer <ydebx1@...> a écrit : > > J'ai appliqué ton script sur mon jeu de test. Il y a un problème, les > répertoires sont renommés en fonction de leur contenu !? (liste des > fichiers) > > @+ Yves oui! un méchant bug! il faut en faite distinguer les répertoires des autres fichiers. c'est fixé. merci le beta testeur :) >AH aussi il y a des codes qui ne fonctionnent pas, notamment >while [[ $(ls) =~ $'\xb7' ]]; do rename $'\xb7' · *; done >while [[ $(ls) =~ $'\xb0' ]]; do rename $'\xb0' ° *; done le ° UTF rajoute un caractère  caché! une transformation en html devrait donner ° et je trouve ° après passage à la moulinette! d'autres doivent avoir ce comportement, mais pas trouvé parmi les caractères alphabétiques. c'est déjà ça. j'ai ajouté le ° à la liste des caractères UTF à rechercher pour ne pas transformer le nom du fichier. le script que j'avais donné en 1ère mouture et que tu as transformé avait un GROS inconvénient. il transforme caractère par caractère, l'un après l'autre. les caractères ISO sont sur 1 bit, les caractères UTF sont sur plusieurs. si un des caractères UTF mis en remplacement contient un des bits recherchés, ça va coincer. je n'ai pas trouvé d'ordre de transformation qui supprime cet inconvénient. c'est pour ça que j'ai proposé une transformation simultanée avec tr. et ma version de tr ne supportant pas l'UTF, de supprimer tous les accents venant de noms de fichiers encodés en ISO. je te donne la dernière mouture: http://filebin.ca/pvpccu bye jipe ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] rÃÂéparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe Sat, 7 Nov 2009 13:49:39 +0100,
jipe <j1p3@...> a écrit : > Le Sat, 07 Nov 2009 06:54:19 +0100, > Yves de Brauer <ydebx1@...> a écrit : > > > > > > J'ai appliqué ton script sur mon jeu de test. Il y a un problème, > > les répertoires sont renommés en fonction de leur contenu !? (liste > > des fichiers) > > > > @+ Yves > > > le ° UTF rajoute un caractère  caché! une transformation en html > devrait donner ° et je trouve ° après passage à la > moulinette! d'autres doivent avoir ce comportement, mais pas trouvé > parmi les caractères alphabétiques. c'est déjà ça. j'ai ajouté le ° à > la liste des caractères UTF à rechercher pour ne pas transformer le > nom du fichier. trouvé! le ° UTF est \xc2\xb0, le losange correspondant est \xb0; donc puisqu'on transforme tous les \xb0 en \xc2\xb0 et tant qu'il y en a, la boucle en trouvera toujours et ça bogue! ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationjipe a écrit :
> Le Sat, 07 Nov 2009 06:54:19 +0100, > Yves de Brauer <ydebx1@...> a écrit : > > >> J'ai appliqué ton script sur mon jeu de test. Il y a un problème, les >> répertoires sont renommés en fonction de leur contenu !? (liste des >> fichiers) >> >> @+ Yves > > oui! un méchant bug! il faut en faite distinguer les répertoires des > autres fichiers. c'est fixé. merci le beta testeur :) > .../... > je te donne la dernière mouture: > http://filebin.ca/pvpccu > > > bye > jipe > Cette nouvelle mouture fonctionne sur mon jeu de tests. Cela dit (pour la gloire car mon pb est résolu) tu n'es pas obligé de tester si c'est un répertoire, `ls -d` fonctionne aussi sur un fichier standard. De toute façon, même si elle n'est pas parfaite, je préfère la première mèthode qui conserve les caractères accentués. C'est plus facile de faire un diff avec une sauvegarde précédante. Bon WE Yves ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant][merci Jipe] réparation de noms de fichiers comprenant des losanges avec des points d'interrogationLe Sat, 07 Nov 2009 16:24:16 +0100,
Yves de Brauer <ydebx1@...> a écrit : > > De toute façon, même si elle n'est pas parfaite, je préfère la > première mèthode qui conserve les caractères accentués. C'est plus > facile de faire un diff avec une sauvegarde précédante. > j'ai trouvé les correspondances iso utf. la 1ère méthode doit donc fonctionner : C0 - À - C3 80 C1 - Á - C3 81 C2 - Â - C3 82 C3 - Ã - C3 83 C4 - Ä - C3 84 C5 - Å - C3 85 C6 - Æ - C3 86 C7 - Ç - C3 87 C8 - È - C3 88 C9 - É - C3 89 CA - Ê - C3 8A CB - Ë - C3 8B CC - Ì - C3 8C CD - Í - C3 8D CE - Î - C3 8E CF - Ï - C3 8F D0 - Ð - C3 90 D1 - Ñ - C3 91 D2 - Ò - C3 92 D3 - Ó - C3 93 D4 - Ô - C3 94 D5 - Õ - C3 95 D6 - Ö - C3 96 D8 - Ø - C3 98 D9 - Ù - C3 99 DA - Ú - C3 9A DB - Û - C3 9B DC - Ü - C3 9C DD - Ý - C3 9D DE - Þ - C3 9E DF - ß - C3 9F E0 - à - C3 A0 E1 - á - C3 A1 E2 - â - C3 A2 E3 - ã - C3 A3 E4 - ä - C3 A4 E5 - å - C3 A5 E6 - æ - C3 A6 E7 - ç - C3 A7 E8 - è - C3 A8 E9 - é - C3 A9 EA - ê - C3 AA EB - ë - C3 AB EC - ì - C3 AC ED - í - C3 AD EE - î - C3 AE EF - ï - C3 AF F0 - ð - C3 B0 F1 - ñ - C3 B1 F2 - ò - C3 B2 F3 - ó - C3 B3 F4 - ô - C3 B4 F5 - õ - C3 B5 F6 - ö - C3 B6 F8 - ø - C3 B8 F9 - ù - C3 B9 FA - ú - C3 BA FB - û - C3 BB FC - ü - C3 BC FD - ý - C3 BD FE - þ - C3 BE FF - ÿ - C3 BF B0 - ° - C2 B0 pour bien faire, il faut donc commencer par transformer C3 en Ã=C3 83 puis C2 en Â=C3 82. les autres caractères alphabétiques ne donneront pas d'erreur. reste le cas du ° où il faudrait tester que B0 ne soit pas précédé de C2. voir aussi quels autres caractères peuvent donner ce même genre de problème. vala, bon WE aussi bye jipe ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] Gnome + compiz = surchauffeChristophe Gaubert a écrit :
> Le 06/11/09, yvep a écrit : > >> Je réitère pour ceux qui ont un portable ou notebook, s'ils utilisent >> gnome et qu'ils constatent le phénomène de chauffe, il suffit de >> désactiver compiz pour s'éviter des soucis. > > En même temps, ça ne me serait pas venu à l'idée de faire ça ;-))) Vu > la façon dont "linux" bouffe la batterie... > > > son pc au complet ! Je trouve que les kde et gnome ont vraiment pris de l'embonpoint ;-) Vive E-17, icewm, windowmaker et xfce qui d'ailleurs commencent également à prendre le chemin de kde et consort :-) N'est-ce pas Patrick ? Bon week-end à tous Bye ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
|
|
Re: [debutant] Gnome + compiz = surchauffeAndré Salaün a écrit :
>> Salut, >> >> Je me réponds à moi même pour mon problème de surchauffe : le fautif est >> compiz. J'utilise la version 0.8.4 de compiz et je constate qu'en >> l'activant le processeur devient complètement dingue. >> Les quatre coeurs de mon processeur montent jusqu'à 35 voire 45 % >> d'occupation processeur. C'est énorme car le ventilateur fait un bruit >> pas possible pour essayer de refroidir tout ce beau monde. >> >> Je crois qu'il ne me reste qu'à attendre une nouvelle version de compiz >> qui corrige ce problème :-( >> Je réitère pour ceux qui ont un portable ou notebook, s'ils utilisent >> gnome et qu'ils constatent le phénomène de chauffe, il suffit de >> désactiver compiz pour s'éviter des soucis. >> >> Bye Yvep > Linux aurait du mal avec les quadricor ? > Avec un simple athlon il monte au maximum lors de l'utilisation des effets cube > et autre à 16% d'occupation cpu et redescend immédiatement à 0; > > Cependant je trouve aussi que c'est déjà trop étant donné qu'on nous quand > même bassiné sur le fait que ces programmes utilisaient les capacités et la > mémoire de la carte graphique... et que l'on constate q'ils bouffent énormément > de temps cpu. > > Quand aux mutlicors je ne suis pas du tout certain qu'il soient bien gérés par > aucun OS, ça me fait penser au 64 bits qui en fait est largement sous exploité > par les programmes...En fait je suis même certain qu'il existe un énorme > hiatus entre les fabricants de matériel, leur com et la réalité du > développement des logciels et plus exactement des OS. > > http://www.cnetfrance.fr/produits/micro-les-processeurs-multiplient-les- > coeurs-pour-quoi-faire-39369165.htm > capacités du processeur. Quand je vois sur une machine comme la mienne en 64 bits gimp avec tous ses greffons met près de 15 secondes pour démarrer je me pose des questions sur cette notion de quad core et patati et patata. C'est encore du marketing tout ça ! L'article de cnetfrance est vraiment bien fait et je trouve que parler de double voire quadruple coeur c'est aujourd'hui de la pure connerie pour le client lambda c'est-à-dire moi.... Bye Yvep ========================================= http://www.mandriva.com/fr/linux/ Services & matériels certifiés sur http://store.mandriva.com/fr/ ========================================= |
| < Prev | 1 - 2 | Next > |
| Free embeddable forum powered by Nabble | Forum Help |