Saya mencoba perintah berikut:
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"
Saya mendapatkan kesalahan ini:
ERROR : Invalid Parameter #10 : "/log:x:\path to logs\12-15-11 01 file with spaces.txt"
EDIT # 1
Ternyata perintah di atas valid, saya salah ketik di jalur saya. Jika Anda memiliki jalur yang menyertakan spasi, Anda dapat menyediakannya untuk saklar robocopy / log seperti:/log:"c:\path to a file\robocopy.log"
Jawaban:
Jika Anda perlu memberikan jalur yang menyertakan spasi ke sakelar / log robocopy Anda dapat melakukannya seperti ini:
sumber
Ada empat cara logging sebagai dokumentasi Powershell
/log:<LogFile>
: Menulis keluaran status ke file log (menimpa file log yang ada).robocopy "c:\a" "c:\b" /log:"c:\copy_log.log"
/log+:<LogFile>
: Menulis output status ke file log (menambahkan output ke file log yang ada).robocopy "c:\a" "c:\b" /log+:"c:\copy_log.log"
/unilog:<LogFile>
: Menulis keluaran status ke file log sebagai teks Unicode (menimpa file log yang ada).robocopy "c:\a" "c:\b" /unilog:"c:\copy_log.log"
/unilog+:<LogFile>
: Menulis output status ke file log sebagai teks Unicode (menambahkan output ke file log yang ada).robocopy "c:\a" "c:\b" /unilog+:"c:\copy_log.log"
Untuk lebih jelasnya https://technet.microsoft.com/en-us/library/cc733145(v=ws.11).aspx
sumber
/tee
switch karena itu juga menghasilkan output baris perintah dan memungkinkan pengguna untuk melihat kemajuan menyalin file di baris perintah juga.Itu terjadi ketika membutuhkan hak admin / atau pop untuk membuat file ke direktori itu
Jadi cobalah untuk memiliki direktori log / temp dan cobalah untuk menambahkan file log ke direktori log itu
misalnya:
sumber
Jika path ke file log berisi spasi atau beberapa pembatas skrip lainnya, harap sertakan dalam tanda kutip seperti yang disarankan oleh EDIT # 1 dan @slm. Tetapi juga, harap perhatikan penggunaan karakter pelarian seperti dijelaskan dalam dokumentasi ini tentang skrip Batch .
sumber