web-dev-qa-db-fra.com

Comment copier des répertoires avec des espaces dans le nom

J'essaie d'utiliser robocopy mais je ne parviens pas à le faire fonctionner à cause d'espaces dans les noms de répertoire.
J'essaie de copier 3 répertoires: Mes documents, Ma musique et Mes images dans 'C:\test-backup' mais je veux que le résultat final soit
'C:\test-backup\Mes documents'
'C:\test-backup\Ma musique'
'C:\test-backup\Mes images' 

Ma commande ne fonctionne pas:
robocopy C:\Users\Angie C:\test-backup "My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"

Peu importe ce que je fais, cela ne se produit tout simplement pas. Quelqu'un a des suggestions ou des astuces?

11
Angie

Qu'est-ce qui sépare My Documents de C:\test-backup? Et pourquoi les guillemets uniquement autour de My Documents?

Je suppose que c'est une faute de frappe, essayez d'utiliser robocopy C:\Users\Angie "C:\test-backup\My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"

[Edition:] La syntaxe spécifiée par la documentation (robocopy <Source> <Destination> [<File>[ ...]]) indiquant File, il est possible que cela ne fonctionne pas avec Folders

Vous devrez utiliserrobocopy "C:\Users\Angie\My Documents" "C:\test-backup\My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"

8
Yatharth Agarwal

Après quelques essais et erreurs et en observant les résultats (en d’autres termes, je l’ai piraté), je l’ai obtenu.

Les citations sont obligatoires pour utiliser un nom de chemin avec des espaces. Le truc, c'est qu'il DOIT y avoir un espace après les noms de chemins avant le dernier guillemet ... comme ceci ...

robocopy "C:\Source Path " "C:\Destination Path " /option1 /option2...

Cela ressemble presque à un bug et certainement pas très intuitif.

Todd K.

60
toddk63

Il n'est pas nécessaire d'ajouter de l'espace avant la fermeture de la citation si le chemin d'accès ne contient pas de barre oblique inverse de fin.

robocopy "C:\Source Path" "C:\Destination Path" /option1 /option2...

Mais ce qui suit ne fonctionnera pas:

robocopy "C:\Source Path\" "C:\Destination Path\" /option1 /option2...

Ceci est dû au problème qui est décrit ici :

\ Esc peut causer des problèmes avec les chemins de répertoires cités qui contient une barre oblique inverse, car la citation finale "à la fin de la ligne sera échappée \".

16
Neven
robocopy "C:\Users\Angie\My Documents" "C:\test-backup\My Documents" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"
robocopy "C:\Users\Angie\My Music" "C:\test-backup\My Music" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"
robocopy "C:\Users\Angie\My Pictures" "C:\test-backup\My Pictures" /B /E /R:0 /CREATE /NP /TEE /XJ /LOG+:"CompleteBackupLog.txt"
1
Green Black

Lorsque vous spécifiez le dernier répertoire sur le chemin, supprimez le dernier.

par exemple "\ serveur\répertoire avec espace\répertoire avec espace".

ça devrait le faire.

1
Tekwiz

Si ce dossier est le premier de la commande, il ne fonctionnera pas avec un espace dans le nom du dossier. Remplacez-le par un trait de soulignement.

0
MikeB