88 votes

Comment forcer Windows à renommer un fichier avec un caractère spécial ?

J'ai une chanson que Windows ne peut pas lire car il y a un point d'interrogation dans le nom du fichier.

"Où sont passés tous les cowboys?.ogg" // par exemple

Donc j'essaie de le renommer et Windows se plaint que ce soit dans l'explorateur ou depuis l'invite de commandes.

L'erreur que j'obtiens lorsque j'essaie de copier, renommer ou déplacer est:

Le nom de fichier, de répertoire ou d'étiquette de volume n'est pas correct

Y a-t-il un moyen Windows de forcer un renommage dans ce cas?

Mise à jour

Je vais surveiller cette question, mais après 13 réponses et de nombreuses tentatives (à part des solutions tierces), il semble que Windows ne puisse pas le faire (ou du moins mon windows ne peut pas, pas de noms courts). Je vais donc accepter la réponse qui était ma solution initiale de toute façon en utilisant Linux. Ce serait bien de voir Windows gérer cela d'une manière ou d'une autre, donc ne vous arrêtez pas juste parce que j'ai accepté cette réponse, la question reste ouverte!

11voto

anon Points 1

La façon dont j'ai supprimé le fichier tenace était d'ouvrir 7zip, de trouver le fichier et de le renommer à travers 7zip. Le mien était une chanson qui avait un espace à la fin du fichier.

8voto

Jan Lachnitt Points 1

Utilisez Recuva. Il est principalement conçu pour récupérer des fichiers supprimés, mais il a également une option pour inclure les fichiers non supprimés dans son analyse.

Après avoir lancé Recuva, refusez l'assistant et sélectionnez le bon disque. Ensuite, allez dans Options, trouvez et cochez l'option "analyser les fichiers non supprimés" et lancez l'analyse. Après un certain temps, il affichera tous les fichiers sur le disque (qu'ils soient supprimés ou non). Trouvez vos fichiers avec des noms invalides (les noms sont déjà corrigés dans la vue), sélectionnez-les, faites un clic droit et enregistrez ("récupérez") quelque part.

entrez la description de l'image ici

Je viens de le faire (sous Windows XP).

5voto

SamS Points 827

L'outil Microsoft DISKEDIT.EXE est un outil de bas niveau pour lire et écrire directement des données brutes sur un disque. Vous devriez pouvoir charger le cluster contenant l'entrée du répertoire pour ce fichier et simplement changer le caractère '?' problématique pour quelque chose d'anodin et le réécrire sur le disque.

Je comprends que l'outil diskedit de Microsoft (et non l'outil Norton Utilities portant le même nom, qui est uniquement pour les volumes FAT) a été vu pour la dernière fois dans Windows 2000 SP4. Mais un lien vers cet outil peut être trouvé ici.

Pour localiser le bon cluster, vous pouvez télécharger une version d'essai de DiskExplorer pour NTFS.

Vous commencerez par Fichier->Disque... pour ouvrir le disque contenant ce mauvais fichier. Sélectionnez Aller à->Répertoire racine pour obtenir une vue du répertoire. Naviguez jusqu'au répertoire contenant votre mauvais fichier en utilisant les liens MFT#. Une fois arrivé là, le haut de la fenêtre indiquera quelque chose comme "MFT# x12345 DIR: 'nomdurepertoire',...blah blah blah... commençant au cluster x9302AE,... blah blah blah"

Passez maintenant à diskedit de Microsoft. Commencez par Fichier->Ouvrir... et spécifiez le Nom du volume C: (si le fichier est sur votre lecteur C:). Laissez le Nom du fichier du volume vide. Prenez ce numéro de cluster de départ et entrez-le dans diskedit sous Lire->Clusters NTFS...->Cluster de départ (entrez-le en tant que nombre hexadécimal).

Utilisez maintenant vos touches de direction pour faire défiler jusqu'au mauvais nom de fichier. Il est en unicode, vous chercherez donc quelque chose comme "O.u. .s.o.n.t. .t.o.u.s. .l.e.s. .c.o.w.b.o.y.s. .p.a.r.t.i.?...o.g.g." Placez votre curseur sur le caractère "3F" incorrect et saisissez quelque chose de sûr, comme 5F ('_'). Choisissez Écrire->Il pour le réécrire sur le disque.

Il y a un autre endroit à toucher (je ne suis pas sûr si l'un ou l'autre est nécessaire). Maintenant, de retour dans DiskExplorer, cliquez sur le Mft# du fichier défectueux. Vous obtiendrez un écran avec une sorte d'arborescence à gauche qui indique "structures". Cliquez sur "Attributs" dans l'arborescence. Il vous montrera une liste d'attributs, dont l'un sera quelque chose comme $30 ... $FILE_NAME. Ainsi, $30 contient le nom du fichier. Cliquez sur le nœud Corps sous le nœud $30 dans l'arborescence des Structures. Sélectionnez le menu Affichage->en Hexadécimal. Plusieurs lignes plus bas, vous devriez à nouveau voir le nom de fichier O.u. .s.o.n.t... etc. Sur le côté gauche de l'écran, vous verrez la colonne Secteur, qui indique le secteur du disque que vous êtes en train d'examiner.

Revenez maintenant à diskedit. Faites Lire->Secteurs... et entrez le numéro de secteur de DiskExplorer. Comme précédemment, faites défiler et remplacez le caractère "3F" par le même caractère que celui que vous avez utilisé ci-dessus. Choisissez Écrire->Il pour l'écrire sur le disque.

J'ai fait tout cela, et les outils me disent que j'ai modifié le caractère, mais l'explorateur ne le montre pas. Le répertoire doit être mis en cache quelque part. Après un redémarrage, le changement devient visible.

5voto

ConceptJunkie Points 1

Si vous avez Cygwin installé, il devrait être capable de s'occuper du fichier. J'avais ce problème tout à l'heure et en utilisant rm de Cygwin dans un shell bash, j'ai pu supprimer le fichier sans problème alors qu'aucune application Windows, y compris Explorer et même en essayant d'utiliser le filespec UNC avec CMD.exe, n'a aidé.

Je suppose que mv le ferait aussi au cas où vous voudriez conserver le fichier.

Une configuration minimale de Cygwin ne prend que quelques minutes, et je le garde toujours de toute façon car il y a tellement de bons outils. C'est plus facile que de démarrer Linux, même en utilisant un CD live.

4voto

Tom Kidd Points 1617

Avez-vous essayé de le déplacer dans un fichier avec le bon nom?

déplacer "Where Have All the Cowboys Gone?.mp3" "Where Have All the Cowboys Gone.mp3"

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X