57 votes

Comment copier des fichiers dont le chemin d'accès est trop long sous Windows ?

J'ai besoin de faire des sauvegardes de certains fichiers sur un réseau partagé. Cependant, je dois copier ces fichiers sur mon disque local avant de graver les disques car ces fichiers peuvent être utilisés. Certains fichiers ne sont pas copiés car leur chemin d'accès est trop long. Existe-t-il une solution de contournement autre que la modification de la structure des fichiers ?

28voto

Jan. Points 276

La longueur maximale du chemin est de 260 dans Windows Vista/7. Je peux vous recommander trois solutions :

  • (si le chemin est trop long) Copiez d'abord le dossier aux niveaux supérieurs dans l'explorateur Windows, puis déplacez-le sur votre ordinateur local.
  • (si les noms de fichiers sont trop longs) Essayez d'abord de les zipper/rar/7z avec une application d'archivage, puis copiez le fichier d'archive sur votre ordinateur local et extrayez ensuite le contenu.
  • Utilisez des applications tierces.

Toutes ces suggestions supposent que vous disposez d'une sorte d'accès en écriture sur le dossier partagé du réseau/ordinateur. Si vous ne pouvez pas faire l'une de ces suggestions, vous aurez peut-être besoin de l'aide de votre administrateur.

19voto

Mad_Dud Points 258

Peut accéder à des longueurs de chemin allant jusqu'à ~32 767¹ caractères en les préfixant avec \\?\ .

\\?\C:\Some\Really\Long\Path

Cela fonctionne à partir de l'invite de commande et de tout autre programme qui utilise les méthodes de l'Api Win32 Unicode, y compris les applications .Net.

( Documentation )

Elle nécessite un système de fichiers prenant en charge les chemins longs (par exemple NTFS), mais si vous avez un problème de chemin long, c'est un fait acquis.

Notez que certaines applications et beaucoup d'outils natifs (comme Explorer) auront des problèmes avec ces chemins. alors utilise ça pour te sortir d'un trou, pas pour y entrer.

Vous pouvez également utiliser une variante \\?\UNC\ pour accéder à de longs chemins à travers les partages du réseau...

\\?\UNC\server_name\share_name\...

¹ Pour ceux qui sont intéressés, il es 32 767 et non 32 768 car il s'agit d'une chaîne de caractères non terminée mais le \\?\ peut être étendu, consommant certains caractères, donc ne comptez pas sur un décompte précis.

4voto

Markus Points 179

FastCopy est un projet open source en C écrit par SHIROUZU Hiroaki et est "le logiciel de copie/suppression le plus rapide sous Windows". Il prend en charge l'UNICODE et les noms de chemin de fichier supérieurs à MAX_PATH (260 caractères).

Si vous avez des centaines de chemins qui sont trop longs à réparer, utilisez " Outil Path Tool Long Auto Fixer " Outil

1voto

Chik Ronald Points 21

J'utilise une solution logicielle beaucoup plus simple :

FreeFileSync ( Portable ) pour faire le travail à merveille. (il n'y a pas de restriction concernant les noms de fichiers longs).

Vous pouvez soit

1) Utilisation FreeFileSync a copier les fichiers au tout début OU

2) dans mon cas, J'ai copié des fichiers avec Explorer, il m'alerte que certains fichiers ne sont pas copiés à cause de noms de fichiers trop longs. Ensuite, je utiliser FreeFileSync pour synchroniser les fichiers restants (non copiés) .

Le point positif est que la vitesse de copie est assez rapide.

-3voto

Overmind Points 9514

La solution la plus rapide que j'ai utilisée dans cette situation a été de renommer les dossiers aux noms trop longs en quelque chose comme "1".

En outre, de manière générale, j'essaie d'expliquer à tous les utilisateurs de ne pas mettre l'histoire de leur vie dans un nom de fichier ou de dossier.

Tout gestionnaire de fichiers digne de ce nom peut gérer des noms de fichiers de plus de 260 caractères.

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