Re: Copier des fichiers avec des caractères spéciaux vers une partition fat32
Xavier wrote:
Merci pour votre aide.
Je suis d'accord avec la plupart d'entre-vous concernant l'utilisation du
système de fichier fat32.
Mais des fois, on a pas le choix.
Mes contraintes étaient de mettre sur une clef usb des fichiers à lire sur
un mac ou un windows, et je n'aurai pas forcément la possibilité
d'installer quelque chose pour m'aider à les lire.
De plus, je trouve dommage de ne pas utiliser les accents dans les noms de
fichiers uniquement parce que certains systèmes de fichiers ne les gèrent
pas. Bien sûr, ça peut se justifier si on les utilisent régulièrement mais
ça n'est pas mon cas.
ça pose des problèmes, donc l'interet est réduit. un fichier de
description (genre transtbl.map :) suffit si tu veux "documenter" ce
qu'est chauqe fichier. car se taper des crises de nerfs à cause d'un
"Copie de popo.lnk" dans un find, c'est pas super top. voir rater un "ls
foo<bar.txt" qui écrase le fichier "foo" alors qu'on voulait pas, ...
si tu veux t'amuser, créé des fichiers avec des lettres majuscules
accentuées sous windows (genre À), et essaye de les ouvrir avec
differents softs. quand ça plante, tu ne sais pas pourquoi (enfin si,
mais quand ça m'arrivait au début, je ne réagissais pas vite), parce que
l'erreur c'est le classique "ressource en cours d'utilisation. fermez le
machin chouette ..." C'est mieux que "une erreur inconnue est arrivée.
voulez-vous continuer: OK. Annuler", mais bon. je préfère au moins le
côté satirique (ou sadique?) de "keyboard error. type F1 to continue".
Conclusion, je m'en suis sorti avec un krename :
1) changement de jeu de caractères pour transformer les é à ç en e a c
Attention quand-même:
% ls -1
même.avi
mémé.avi
...
% mon_rename...
% ls -1
meme.avi
ça peut faire gagner de la place, mais bon, c'est quand-mémé pas le but.
2) remplacement des ? : < > par des '_'
idem pour:
% ls -1
toto:V.txt
toto_V.txt
de toute façon, j'espère que t'as pas des fichiers avec des < et > par
exemple. sinon faut faire attention quand tu lances des commandes...
PS. y a aussi le probleme des fichiers genre ".bashrc"...
En ligne de commande, d'après ce que j'ai vu :
1) peut se faire avec
mv et iconv
ou
convmv (pas pu tester à cause d'un bug dans perl)
2) peut se faire simplement avec rename
Il faut juste identifier les caractères interdits en fat.
Selon wikipedia
(http://en.wikipedia.org/wiki/File_Allocation_Table#Directory_table) :
" * / : < > ? \ |
Pour ceux que ça intéresse, une piste que je n'ai pas exploré sont les
options de montage de la partition vfat :
option uni_xlate (cf man mount)
J'ai pas essayé (j'avais d'autre chose à faire)
mais hal me montait ma clef avec les options :
rw,nosuid,nodev,noatime,uhelper=hal,flush,uid=1000,utf8,shortname=lower
Question bonus :
Le caractère '/' est-il autorisé pour un nom de fichier en ext3 ?
non, car comme tu dis, c'est le séparateur de dossiers.
Est-ce que ça a du sens vu que / sépare les dossiers ?
Et si oui, comment créer un fichier nommé '/' ?
a peu pas. et ça m'étonnerait que ça marche sous windows, puisque '/'
est pour les options (genre 'dir /w' ....);
Reply to: