Tâche simple:
Déplacer tout le contenu du répertoire c:\Users\files\Desktop\test 2
versc:\Users\files\Desktop\test 1
C:\admin\temp>robocopy "c:\Users\files\Desktop\test 2" "c:\Users\files\Desktop\test" *.* /S /MOVE
Cela semble raisonnable, mais maintenant, le répertoire c:\Users\files\Desktop\test 2
est également supprimé. Existe-t-il un commutateur pour déplacer simplement le CONTENU sans supprimer le répertoire lui-même?
Réponses:
J'ai essayé de faire la même chose à partir d'un partage réseau.
Voici mes résultats et la solution des tests sur une machine Windows 7.
Suggestion:
Problème: déplace le dossier source.
Suggestion:
Problème: déplace toujours le dossier source.
Suggestion:
Problème: laisse la structure de dossiers vide derrière dans le dossier source.
Solution de travail:
Les deux premières lignes déplacent les fichiers de niveau supérieur, la troisième déplace les dossiers. Notez que le double %% est destiné à être utilisé dans un fichier de commandes, le collage dans une ligne de commande doit être modifié en un seul pourcentage.
~ nxi dans la destination est une VARIABLE DE SUBSTITUTION (Voir POUR /?) où ~ nxi représente le nom et l'extension de l'élément en cours de bouclage.
Par défaut, Robocopy tente de RÉESSAYER UN MILLION de fois et D'ATTENDRE 30 SECONDES entre chaque essai, vous pouvez donc ajouter / R: 1 / W: 1 aux arguments de la robocopie.
la source
Avez-vous essayé l'option / MOV?
F:> robocopie /?
ROBOCOPY :: Copie de fichier robuste pour Windows
Début: ven 06 août 11:51:26 2010
la source
Pour ce faire, créez un fichier d'espace réservé dans le répertoire que vous ne souhaitez pas supprimer, puis demandez à robocopy d'exclure le fichier à l'aide de / XF
Étant donné que le fichier est exclu, il ne sera pas déplacé et le répertoire ne sera pas supprimé.
Pour plus de détails, consultez cet autre site: http://www.experts-exchange.com/OS/Microsoft_Operating_Systems/Windows/XP/Q_24306678.html (et faites défiler vers le bas, etc., etc.).
la source
J'ai rencontré le même problème et
MKDIR
je l'ai juste corrigé avec la commande après avoir exécuté lerobocopy
.Vous souhaitez déplacer tout le contenu d'un dossier donné, de sorte que SEULS les dossiers parents soient laissés pour compte. Eh bien, pourquoi ne pas simplement recréer le dossier parent?
Bien sûr, vous pouvez avoir des problèmes de droits d'utilisateur, mais cela peut également être résolu.
la source
Créez un fichier d'espace réservé unique que vous excluez de la commande robocopy.
Un revêtement est le suivant:
la source
Utilisez le commutateur / mov au lieu de / move
la source
«Ma» solution consiste à déplacer des fichiers et des dossiers dans un dossier temporaire dans le dossier source. (ne copiez pas le dossier temporaire dans lui-même!) Et après, déplacez celui-ci dans le dossier du taget.
Je détecte simplement que le «déplacement» vers le dossier temporaire prend trop de temps. Voici la mise à jour:
la source
J'ai eu de la chance de trouver la réponse. Je voulais déplacer un dossier au niveau supérieur d'un disque. J'ai essayé:
Il a donné une erreur en utilisant les éléments suivants pour la destination: H:\" \MOVE \E\.
J'ai deviné que le "\" échappait à la double citation suivante, et j'ai changé la commande en:
Il a fini par copier le contenu de "" dans la racine du lecteur.
La réponse à la question est donc:
Cordialement,
Georges
la source
Je viens d'effectuer un test à l'aide des commutateurs
/mov
&/e
, et cela fonctionne parfaitement.Notant les options de ligne de commande, il y a une différence entre
/mov
et/move
. Le fichier de test s'est déplacé vers la destination, laissant intacte la structure de répertoires de la source.la source
Pourquoi est-ce différent? Ce n'est pas différent. Une opération de déplacement est une opération de copie / suppression, que vous utilisiez Robocopy ou non. Vous lui dites de déplacer le dossier. Le déplacement signifie que vous emménagez dans le nouvel emplacement et quittez l'emplacement précédent.
la source
Why is it different? It's not different.
l'OP a affiché une capture d'écran montrant le comportement attendu car cela pourrait être fait via * nix mais que robocopy ne semble autoriser dans aucune facette.Ajoutez simplement \*
la source