2016-08-22 3 views
0

J'utilise Robocopy dans Windows Terminal cmd, et le code estRobocopy se plaint de l'espace dans le paramètre de lien, même quand il y a des citations

SET source="C:\DevSPInstaller2013\" 
SET destination="D:\Backup\SP2013 VM\v2\"  
Robocopy.exe %source% %destination% /e /np /eta /r:1 /w:1 /log:"D:\Logs\sp.txt" 

Mais il échoue juste avec pramater # 3 non valide: « VM \ v2 »

Je citations donc je ne suis pas sûr ce qui est faux ...

est-ce que quelqu'un sait?

Merci

+0

Votre problème sont les backslashes de fin. Bien que lié à une autre commande, [cette réponse] (http://stackoverflow.com/a/25841519/2861476) à ["Erreur de chemin d'accès 0 fichiers copiés" Erreur lors de l'utilisation de la commande xcopy] (http://stackoverflow.com/q/25840861/2861476) pourrait vous aider à résoudre le problème. –

Répondre

0

fonction WinAPI GetCommandLine() semble avoir des problèmes avec des citations supprimées sur l'expansion des variables d'environnement. Vous devriez entourer les noms de fichiers avec des guillemets directement sur la ligne de commande plutôt que pendant leur affectation avec SET. Essayez ceci:

SET source=C:\DevSPInstaller2013\ 
SET destination=D:\Backup\SP2013 VM\v2\ 
Robocopy.exe "%source%" "%destination%" /e /np /eta /r:1 /w:1 /log:"D:\Logs\sp.txt"