web-dev-qa-db-fra.com

Comment puis-je faire en sorte que robocopy utilise un fichier journal contenant des espaces?

J'essaie la commande suivante:

robocopy "x:\dir" "y:\dir" /mir /z /tee /fft /nfl /ndl /eta /log:"x:\path to logs\12-15-11 01 file with spaces.txt"

Je reçois cette erreur:

ERROR : Invalid Parameter #10 : "/log:x:\path to logs\12-15-11 01 file with spaces.txt"

MODIFIER # 1

Il s'avère que la commande ci-dessus était valide, j'avais une faute de frappe sur mon chemin. Si vous avez un chemin qui comprend des espaces, vous pouvez les fournir au commutateur robocopy/log comme ceci: /log:"c:\path to a file\robocopy.log"

11
slm

Si vous devez fournir un chemin qui inclut des espaces vers le commutateur robocopy/log, vous pouvez le faire comme ceci:

/log:"c:\path to logs files\some log file.txt"
11
slm

Il existe quatre façons de se connecter en tant que documentation Powershell

/log:<LogFile>: Écrit la sortie d'état dans le fichier journal (écrase le fichier journal existant).

  • par exemple: robocopy "c:\a" "c:\b" /log:"c:\copy_log.log"

/log+:<LogFile>: Écrit la sortie d'état dans le fichier journal (ajoute la sortie au fichier journal existant).

  • par exemple: robocopy "c:\a" "c:\b" /log+:"c:\copy_log.log"

/unilog:<LogFile>: Écrit la sortie d'état dans le fichier journal sous forme de texte Unicode (écrase le fichier journal existant).

  • par exemple: robocopy "c:\a" "c:\b" /unilog:"c:\copy_log.log"

/unilog+:<LogFile>: Écrit la sortie d'état dans le fichier journal sous forme de texte Unicode (ajoute la sortie au fichier journal existant).

  • par exemple: robocopy "c:\a" "c:\b" /unilog+:"c:\copy_log.log"

Pour plus de détails https://technet.Microsoft.com/en-us/library/cc733145 (v = ws.11) .aspx

4
Nayana Adassuriya

Cela se produit lorsque vous avez besoin des privilèges d'administrateur/ou pop pour créer un fichier dans ce répertoire

Essayez donc d'avoir un répertoire log/temp et essayez d'ajouter un fichier journal dans ce répertoire

$ mkdir C:\log

par exemple:

$ robocopy "c:\a" "c:\b" /log:"c:\log\copy_log.log"
1
jaismeensandhu

Si le chemin d'accès au fichier journal contient des espaces ou d'autres délimiteurs de script, veuillez l'inclure dans des guillemets tels que votre EDIT # 1 et @slm le suggèrent. Mais aussi, veuillez noter l'utilisation de caractères d'échappement comme décrit dans cette documentation sur les scripts Batch .

0
Alain