Boşluklar içeren bir günlük dosyasını kullanmak için robokopiyi nasıl edinebilirim?


11

Aşağıdaki komutu deniyorum:

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"

Bu hatayı alıyorum:

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

DÜZENLEME # 1

Yukarıdaki komutun geçerli olduğu ortaya çıktı, yolumda bir yazım hatası vardı. Boşluklar içeren bir yolunuz varsa, bunları robocopy'nin / log anahtarına şu şekilde sağlayabilirsiniz:/log:"c:\path to a file\robocopy.log"


Benim için çalışıyor. Belki daha üstte daha ayrıntılı bir hata gösteriyor mu?
Carko

Bu komutu doğrudan komut satırında değil, komut dosyası bağlamında mı çalıştırıyorsunuz? Belki başka bir şey bir çeşit kaçış ekliyor?
Zoredache

Hata iletisi, ilk tırnak işaretlerinin iki nokta üst üste işaretinden önce olduğunu; çalıştırmaya çalıştığınız komutun gösterildiği gibi olduğundan emin misiniz?
Harry Johnston

Çok üzgünüm, yolda bir yazım hatası vardı. Büyük utanç verici. Herkesin derhal yardım ettiği için teşekkürler! Prosedür nedir, bu soruyu silmeli miyim? Ya da onu yeniden ifade edebilir ve robokopinin / log anahtarına argüman etrafına tırnak koyabileceğinizi gösteren bir cevap ekleyebilir miyim?
slm

@Slm dosyasını silmek için bir neden yok. Yukarıdaki yorumlardan biri sorunu bulmanıza yardımcı olduysa, yanıt olarak göndermelerini isteyin ve ardından cevabı doğru olarak işaretleyin. Sorun tamamen başka bir şeyse, kendi cevabınızı yazın ve cevap olarak işaretleyin, böylece gelecekteki arama yapanların benzer bir problemleri olup olmadığını kontrol etmelerini öğreneceklerdir.
music2myAra

Yanıtlar:


11

Robocopy / log anahtarına boşluklar içeren bir yol sağlamanız gerekiyorsa, bunu şu şekilde yapabilirsiniz:

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

Geçersiz Hata: parametre # 11 "/ log" alıyorum. Aksi halde çalışan bir komutun sonuna ekledim.
Andrew S

Artık pencereleri desteklediğim yerde çalışmıyorum, bu yüzden bunu test etmenin bir yolu yok.
slm

Günlük dosyasının üst dizininin var olduğundan emin olun. Robocopy bunu yaratmaz ve ne yazık ki dir yoksa cmdline parametresi hakkında şikayet eder.
mojo

4

Powershell belgeleri olarak günlüğe kaydetmenin dört yolu vardır

/log:<LogFile> : Durum çıktısını günlük dosyasına yazar (mevcut günlük dosyasının üzerine yazar).

  • Örneğin: robocopy "c:\a" "c:\b" /log:"c:\copy_log.log"

/log+:<LogFile> : Durum çıktısını günlük dosyasına yazar (çıktıyı mevcut günlük dosyasına ekler).

  • Örneğin: robocopy "c:\a" "c:\b" /log+:"c:\copy_log.log"

/unilog:<LogFile> : Durum çıktısını günlük dosyasına Unicode metin olarak yazar (varolan günlük dosyasının üzerine yazar).

  • Örneğin: robocopy "c:\a" "c:\b" /unilog:"c:\copy_log.log"

/unilog+:<LogFile> : Durum çıktısını günlük dosyasına Unicode metin olarak yazar (çıktıyı mevcut günlük dosyasına ekler).

  • Örneğin: robocopy "c:\a" "c:\b" /unilog+:"c:\copy_log.log"

Daha fazla bilgi için https://technet.microsoft.com/en-us/library/cc733145(v=ws.11).aspx


/teeAyrıca ürünleri komut satırı çıktısı olarak anahtar eklemenizi tavsiye edeceğim ve kullanıcının komut satırında da dosya kopyalama işleminin ilerlemesini görmesini sağlayacağım.
vibs2006

1

Bu dizine dosya oluşturmak için yönetici ayrıcalıklarına / veya pop'a ihtiyaç duyulduğunda olur

Bu yüzden bir log / temp dizinine sahip olun ve bu log dizinine log dosyası eklemeye çalışın

$ mkdir C:\log

Örneğin:

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

0

Günlük dosyasına yolu boşluk veya başka bir komut dosyası sınırlayıcılar içeriyorsa, bunu da ekleyin tırnak böyle 1. ve @slm anlaşılacağı sizin DÜZENLEME olarak. Ancak, lütfen Batch komut dosyasında bu belgede açıklanan şekilde çıkış karakterlerinin kullanıldığına dikkat edin .


Aynı sorunu oldukça feci ve istenmeyen bir Win 10 geçişinden sonra yaşıyorum.
Marc
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.