J'ai une chanson que Windows ne peut pas lire car il y a un point d'interrogation dans le nom du fichier.
"Where Have All the Cowboys Gone?.ogg" // as an example
J'essaie donc de le renommer et Windows se plaint de l'avoir essayé dans l'explorateur ou à partir d'une invite de commande.
L'erreur que j'obtiens en essayant de copier, renommer ou déplacer est:
La syntaxe du nom de fichier, du nom de répertoire ou de l'étiquette de volume est incorrecte
Existe-t-il un moyen Windows pour forcer un changement de nom dans ce cas?
Mise à jour
Je garderai un œil sur 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, ma fenêtre ne le peut pas, pas de noms abrégés). Donc, j'accepte la réponse qui était de toute façon ma solution originale d'utiliser Linux. Ce serait bien de voir Windows gérer cela d'une manière ou d'une autre, alors ne vous arrêtez pas simplement parce que j'ai accepté cette réponse, la question est toujours d'actualité!
Réponses:
Prenez un live-cd linux et utilisez-le.
la source
Avez-vous essayé d'utiliser la version des noms de fichiers courts de son nom? Par exemple
S'il s'agit du seul fichier du dossier en cours qui commence par les premières lettres, utilisez les 6 premières lettres du nom (espaces non respectés) suivies d'un tilde (~), puis d'un 1.
la source
Comme vous le verrez, chkdsk a effectivement supprimé les fichiers pour moi. Donc, si vous voulez conserver les fichiers, je ne sais pas quoi faire, mais cela les éliminera à coup sûr.
Résultats / Journal Cmd:
la source
chkdsk
résoudra parfois les noms de fichiers invalides. Vous recevrez un message sur la suppression du fichier car tous les noms de fichier ne sont pas valides, puis sur la récupération d'un fichier perdu. Vous pouvez ensuite trouver le fichier dansC:\found.000\file0000.chk
. C'est un moyen efficace de supprimer les fichiers problématiques, mais ce n'est pas le meilleur moyen de les conserver.la source
\found.000
.La façon dont j'ai supprimé le fichier têtu consistait à ouvrir 7zip, à rechercher le fichier et à le renommer via 7zip. La mienne était une chanson qui avait un espace à la fin du fichier.
la source
Essayez de spécifier le chemin UNC (voir Nommer des fichiers, des chemins et des espaces de noms ). Cela contourne toutes sortes de restrictions. Vous le feriez en utilisant la
\\?\
syntaxe.Exemple, si votre fichier était sur votre bureau (et votre lecteur Windows est C :), vous pouvez le faire.
Remarque: Vous ne pouvez pas utiliser de chemins relatifs avec cette syntaxe. vous devez spécifier le chemin complet. Et cela ne fonctionne pas avec la
ren
commande, mais fonctionne aveccopy
etmove
.la source
\\?\
contourne simplement le traitement du chemin de fichier dans la bibliothèque d’exécution en mode utilisateur. Il n'autorise pas l'ouverture de noms de fichiers qui contiennent les 5 caractères génériques (*? "<>), D'autres caractères réservés (/ |: \) ou des caractères de contrôle.\n
. Ne me demandez pas comment je l'ai créé (enfin, j'essaie de voir si vous pouvez créer plusieurs fichiers portant le même nom sous Windows). Explorer, FreeCommander n'a pas pu le supprimer mais le\\?\C:\...
peut.Utilisez Recuva . Il est principalement destiné à la récupération de fichiers supprimés, mais il dispose également d'une option permettant d'inclure des 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, recherchez et cochez l'option "Rechercher les fichiers non supprimés" et lancez l'analyse. Au bout d'un moment, tous les fichiers du disque (supprimés ou non) seront affichés. Recherchez vos fichiers avec des noms non valides (les noms sont déjà fixes dans la vue), sélectionnez-les, faites un clic droit et enregistrez ("récupérez") quelque part.
Je viens de le faire (sous Windows XP).
la source
/n
que 7-zip ne pourrait pas manipuler.L'outil Microsoft DISKEDIT.EXE est un outil de bas niveau permettant de lire et d'écrire directement des données de disque brutes. Vous devriez pouvoir charger le cluster contenant l'entrée de répertoire pour ce fichier et simplement changer le comportement "?" caractère à quelque chose d'inoffensif et l'écrire sur le disque.
D'après ce que j'ai compris, l'outil Diskedit de Microsoft (et non l'outil Norton Utilities du même nom, réservé aux volumes FAT) a été vu pour la dernière fois dans Windows 2000 SP4. Mais il existe un lien vers celui-ci qui peut être trouvé ici .
Pour localiser le bon cluster, vous pouvez télécharger une version d' évaluation de DiskExplorer pour NTFS .
Vous commenceriez par Fichier-> Lecteur ... pour ouvrir le lecteur contenant ce fichier défectueux. Sélectionnez Goto-> Répertoire racine pour obtenir une vue de répertoire. Accédez au répertoire contenant votre mauvais fichier en utilisant les liens MFT #. Lorsque vous y arrivez, le haut de la fenêtre affiche quelque chose du type "MFT # x12345 DIR: 'dirname', ... blah blah blah ... à partir du groupe x9302AE , ... blah blah blah"
Passez maintenant à Microsoft diskedit. Commencez par Fichier -> Ouvrir ... et spécifiez le nom du volume C: (si le fichier se trouve sur votre lecteur C:). Laissez le nom du fichier de volume vide. Prenez ce numéro de cluster de départ et entrez-le dans diskedit sous Read-> Clusters NTFS ...-> Cluster de départ (entrez-le sous forme de nombre hexadécimal).
Maintenant, utilisez les touches fléchées pour faire défiler jusqu'au nom de fichier incorrect. Il est en unicode, vous allez donc chercher quelque chose comme "Où. Avez-vous. Des. Cowboys. Fini? ... ogg" Placez votre curseur sur le mauvais caractère "3F" et tapez quelque chose de sûr, comme 5F (' _ '). Choisissez Write-> It pour l'écrire sur le disque.
Il y a un autre endroit à frapper (pas sûr si un ou les deux sont nécessaires). Maintenant, de retour dans DiskExplorer, cliquez sur le Mft # pour le fichier endommagé. Vous obtiendrez un écran avec une arborescence à gauche qui dit "structures". Cliquez sur "Attributs" dans l'arborescence. Il vous montrera une liste d'attributs, dont l'un sera quelque chose comme $ 30 ... $ FILE_NAME. Donc, $ 30 a le nom du fichier. Cliquez sur le nœud du corps situé sous le nœud $ 30 dans l'arborescence des structures. Sélectionnez le menu View-> as Hex. Quelques lignes plus bas, vous devriez voir à nouveau le nom du fichier Where .Have .. etc. Sur le côté gauche de l'écran, vous verrez la colonne Secteur, qui indique le secteur du disque que vous regardez.
Retour sur le diskedit. Lisez-> Secteurs ... et entrez le numéro du secteur à partir de DiskExplorer. Comme précédemment, faites défiler vers le bas et remplacez le caractère "3F" par le même caractère que ci-dessus. Choisissez Write-> It pour l'écrire sur le disque.
J'ai fait tout ça, et les outils me disent que j'ai changé de personnage, mais l'explorateur ne le fait pas. Le répertoire doit être mis en cache quelque part. Après un redémarrage, le changement devient visible.
la source
Essayez d’utiliser un outil tiers tel que l’ outil Ken Rename :
ou renommer le maître .
Voici une liste des outils de changement de nom de fichier .
Je les testerais moi-même, mais j'utilise Windows Vista 64 bits; le traitement du fichier peut être différent.
Si ces outils échouent, vous voudrez peut-être essayer Windows PowerShell . Voir Renommer des fichiers sur le blog Windows PowerShell .
la source
Avez-vous essayé de le déplacer dans un fichier portant le bon nom?
la source
copy
commande.?
ou*
ou<
ou>
ou:
dans le nom, etcopy
-ing a juste travaillé? (Je viens de l'essayer et ce n'est pas pour moi, sans surprise.)copy
commande. Avez-vous également essayécygwin
et la commande bashmv
?"
,|
,/
et bien sûr la barre oblique inverse (que je ne peux pas sembler entrer ici :))) sont en une classe différente de caractères problématiques ( réservés ), et j'ai bien peur que ni lacopy
commande ni ceux-ciCygwin
ne puissent en venir à les renommer. (Votre nom de fichier problématique pose probablement des caractères différents.)a
.Dans
cmd.exe
allez au nouveau répertoire et tapez ce qui suit:C'est pour la simplicité. Ensuite , vous pouvez le renommer en XP que vous voulez, comme
1.ogg
àWhere Have All the Cowboys Gone.ogg
.ogg
était juste un exemple, l'extension peut être n'importe quoi.la source
Si vous avez installé Cygwin, il devrait pouvoir gérer le fichier. J'ai eu ce problème tout à l'heure et utiliser rm de Cygwin dans un shell bash a été en mesure de supprimer le fichier correctement sans application Windows, y compris Explorer et l'utilisation de la spécification de fichier UNC avec CMD.exe aidée.
J'imagine que mv le ferait si vous vouliez conserver le fichier.
Une configuration de base Cygwin ne prend que quelques minutes et je la garde toujours malgré tout car il y a tellement de bons outils. C'est plus facile que de démarrer Linux, même en utilisant un live CD.
la source
\\?\
fonctionnerait également dans ce cas - s’il est utilisé correctement avec un chemin Unicode pleinement qualifié. Elle contourne le code de la bibliothèque d'exécution en mode utilisateur qui émule une ancienne règle MS-DOS originale des années 80 qui ignore les espaces à la fin des noms. Le problème avec les caractères non valides et réservés ne peut pas être traité comme ceci.En supposant que le volume en question est FAT32 ou NTFS, essayez d’exécuter chkdsk. Cela devrait nettoyer les entrées de répertoire "corrompues", ce qui signifierait (dans ce cas) supprimer le fichier?. Si c'est le volume de démarrage, vous aurez peut-être besoin d'un redémarrage pour le faire.
la source
:
et faisant cela a fait disparaître le répertoire. Ne fais pas ça.chkdsk
j'ai déplacé le contenu du dossier dans le répertoire racine duCela devrait marcher (du moins, ça l'a fait pour moi):
Cette commande produirait quelque chose semblable à ceci:
C'est
WH5E97~1
ce que vous cherchez!(Remarque: ce code est totalement inventé, mais devrait être similaire à celui que vous trouverez)
Sachant cela, un simple
devrait faire l'affaire.
J'espère que ça aide.
la source
dir t97*
renvoie les deux fichiers, car le caractère générique astérisque correspond le fichiert.txt2
àt97.txt
l'aide de sa courte carte de nomT97B4~1.TXT
as-tu essayé:
pourrait fonctionner.
la source
Essayez un joker en déplacement -
C'est probablement votre meilleur pari, tant qu'il n'y a qu'un seul fichier qui correspond au caractère générique.
la source
glisser et déposer dans un nouveau dossier, naviguer dans l'invite de commande jusqu'à ce dossier et taper
la source
Essayez cygwin pour renommer le fichier:
la commande serait:
mv filename?.ogg filename.ogg
la source
La plupart des commandes internes de Microsoft sont contrôlées avec la présence de
explorer.exe
.Ouvrez votre gestionnaire de tâches et examinez la liste des processus actifs en cours. Vous trouverez
explorer.exe
parmi eux. Cliquez avec le bouton droit et terminez / arrêtez / fermezexplorer.exe
. Ne fermez pas encore le gestionnaire de tâches. Maintenant, allez dans le fichier offensif en utilisant un gestionnaire de fichiers secondaire et essayez de supprimer ou de renommer avec des caractères génériques. Ce sera probablement réussi.Maintenant, revenez à la fenêtre du Gestionnaire des tâches et cliquez avec le bouton droit de la souris sur la ligne supérieure du message Applications, puis sur le bouton du bas indiquant New Task. Entrez
explorer.exe
. Explorer réapparaît et le fichier offensif n’est plus là.la source
L’interface graphique WinRAR vous permettra de renommer les fichiers sans même avoir à les ranger dans une archive. Je l'ai testé sous Windows 8.1, sur un nom de fichier très long. Travaillé comme un charme.
la source
Si vous avez WinRAR, compressez-le sur WinRAR, renommez-le sur WinRAR, décompressez-le.
Ou vous pouvez essayer avec un script VBScript, prendre le script suivant et l’enregistrer dans un fichier avec une extension .vbs .
la source
J'ai également eu un problème similaire avec un dossier. Le nom du dossier était ".min." ce qui n'est normalement pas autorisé.
Renommer non autorisé (cliquez pour l'image)
En utilisant Winrar, j'ai pu résoudre ce problème. Ce que j'ai fait était
Add To Archive ... (cliquez pour l'image)
Ceci est autorisé car Windows ne vérifie pas vraiment ce qui se trouve à l'intérieur du fichier .rar. Dès que vous modifiez le nom, extrayez le fichier et vous avez terminé.
J'espère que ça aide.
la source
10:2
.Utilisez cmd.exe dans ce répertoire avec des caractères génériques. Par exemple:
la source
Le gestionnaire de fichiers 7-Zip (7-zip.org) renommera les fichiers et les répertoires que XP ne peut pas. Je viens de l'utiliser pour extraire un fichier .tar et renommer le fichier .chm inclus, nommé illégalement. Aucun LiveCD requis.
Tschüß!
la source
J'ai eu un problème similaire avec 2 dossiers imbriqués avec des sous-dossiers. Je ne pouvais ni renommer ni supprimer certains fichiers (j'ai essayé de plusieurs façons). Enfin, j'ai trouvé la solution: Teracopy.
Installez-le, cliquez avec le bouton droit sur le dossier ou le fichier et sélectionnez teracopy. Teracopy s'ouvrira, puis cliquez simplement sur
delete
ourename
. Il va le renommer ou le supprimer.Vous voudrez peut-être essayer.
la source
Je suis tombé dans la même situation.
En cherchant sur Google, j'ai appris qu'il n'y avait pas de solution native.
... et j'utilise comme shell le TCC de JPSoft, qui ne peut pas non plus gérer ces fichiers.
Mais j’ai aussi appris que Unlocker de Cedrick Collomb ( http://www.emptyloop.com/unlocker/ ) est capable de le gérer.
Et je l'avais dans ma configuration. Aussi, je le recommande vivement.
Eh bien, au moins cette solution n'implique pas de quitter l'environnement Windows ...
la source
J'ai corrigé un fichier FLAC comme ceci en utilisant la commande d'ouverture de base de Winamp, en utilisant cette fenêtre de l'explorateur de programmes. Lorsque je suis allé dans le dossier, j'avais l'option de renommer, contrairement à Explorer.
la source
Je suis tombé sur une situation similaire. Aucune des solutions postées n'a fonctionné pour moi, mais j'ai finalement trouvé une solution simple:
J'ai simplement copié le fichier (oui, la copie était encore possible pour moi) sur une clé USB, je l'ai renommé puis replacé! Je laisse le soin aux autres d'expliquer pourquoi cela a fonctionné.
la source
Ce n'est pas une réponse directe (comme dans comment Windows peut-il renommer un fichier) mais cela fonctionne pour moi. Les fichiers illégaux sont généralement sur un lecteur externe, je connecte donc le lecteur externe à ma tablette Android . Cela me permet de renommer le fichier qui peut ensuite être lu par Windows. Cela concerne les caractères spéciaux, mais le problème habituel que je rencontre est un nom de fichier commençant ou se terminant par un espace ou se terminant par un '.'
J’ai essayé l’un des outils tiers FlexRenamer, mais le problème persiste.
la source
Dans la plupart des cas, cette réponse est inutile .
Je me suis fait avoir par les noms de fichiers dont les caractères sont représentés par des points d’interrogation alors qu’ils ne sont en fait que des caractères que les polices M $ par défaut ne peuvent pas / ne peuvent pas afficher.
Dois-je supprimer ce message? Cela pourrait encore aider certaines personnes ...
Essayez d'utiliser le cmd.exe intégré dans la complétion par tabulation.
dir /x
ne aide pas (le NTFS a été créé sans support pour les noms de fichiers courts):Essayer de le renommer en tapant / copy'n'pasting le nom ne fonctionne pas:
Pour que cela fonctionne, vous devez utiliser la complétion par tabulation . Naviguez simplement vers le bon répertoire dans le cmd-shell, tapez, tapez
ren
sur la touche tabulateur et continuez à frapper jusqu'à ce que le nom "correct" apparaisse:puis tapez le reste et appuyez sur Entrée:
Vous serez récompensé par ceci:
C'est un peu fastidieux mais jusqu'à présent, cela a toujours fonctionné pour moi avec des fichiers et des répertoires (Windows 7 et 8).
Note latérale amusante: Les
ren
commandes-en 2. et 3. sont identiques mais cela ne fonctionnera pas sans tab -ompletion . Et même si vous avez utilisé la complétion par tabulation, cela ne fonctionnera plus dès que vous aurez modifié le nom aprèsren
(par exemple, supprimer et ajouter un point d'interrogation).la source