Windows cmd répertoires de copie et le contenu de manière récursive si les fichiers n'existent pas

1

La question s'inscrit dans le titre: Je souhaite copier du stockage local vers un répertoire de stockage réseau et son contenu, mais uniquement les fichiers nouveaux ou mis à jour sans invite. Mon idée serait d'utiliser xcopy

xcopy source destination /s /e **only new or updated files**
user69453
la source

Réponses:

1

Windows cmd répertoires de copie et le contenu de manière récursive si les fichiers n'existent pas

Mon idée serait d'utiliser xcopy

Malheureusement XCOPY vraiment ne le fait pas très bien par défaut si du tout pour copier UNIQUEMENT ce qui n’existe pas dans la destination à partir de la source. Également, XCOPY est obsolète par Microsoft et il est recommandé d'utiliser le Robocopy commande à la place, et cela est particulièrement logique si vous construisez un nouveau processus.

Alors, bien que ce soit votre idée d'utiliser XCOPY, J’espère que vous serez prêt à utiliser Robocopy pour répondre à ce besoin particulier, car c’est un outil de ligne de commande natif de Windows destiné à remplacer XCOPY.


Exemple de script Robocopy

(Regardez les options pour vous assurer que tout est réglé pour vos besoins)

(Enregistrez la logique ci-dessous dans un fichier texte et renommez-la en <something>.cmd et double-cliquez pour exécuter si nécessaire)

SET SRC="C:\path\source"
SET DEST="C:\path\destination"
SET FName=*.*
SET LOG=C:\Path\Log.txt
::   If you do not want a log file, remove the "/LOG+:%LOG%" below
SET OPT=/PURGE /S /NP /R:5 /LOG+:%Log% /TS /FP
SET CMD=robocopy %SRC% %FName% %DEST% %OPT%
%CMD%

Exemple de ligne de commande pour copier et coller Robocopy

(Regardez les options pour vous assurer que tout est réglé pour vos besoins)

::   If you do not want a log file, remove the "/LOG+:C:\Path\Log.txt" below
robocopy "C:\path\source" *.* "C:\path\destination" /PURGE /S /NP /R:5 /LOG+:C:\Path\Log.txt /TS /FP

Ressources supplémentaires et lecture

Pimp Juice IT
la source