22.06.2020

Robocopy

Çoğu durumlarda grafik arayüzün dosya kopyalama yetenekleri ile yetiniyoruz. Bunun dezavantajlarından biri olabilecekler hakkında önceden karar verilemiyor olması. Oluşan sıra dışı durumlar veya hatalar (dosya üzerine yazma, hedefteki dosyanın kaynaktakinden yeni olması vs) ile ilgili oluştuğu anda soru sorar. Bu da tüm süreç boyunca klavyenin başında oturulmasını gerektirir. Düz komut satırı aracı copy ise daha az şeyler sunar.

Bunun alternatifi, yine bir Windows aracı olan Robocopy olabilir.

C:\Klasor1 klasörü kaynak, D:\Klasor2 de hedef konumumuz olsun.

Düz kopyalama
C:\robocopy C:\Klasor1 D:\Klasor2
Bu yöntem ile boş klasörler kopyalanmaz.

Boş klasörleri de hedefte yarat
C:\robocopy C:\Klasor1 D:\Klasor2 /E
Taşı
C:\robocopy C:\Klasor1 D:\Klasor2 /E /MOVE
Bu şekilde C:\Klasor1 de silinir, tüm içerik D:\Klasor2 içine taşınmış olur.

Taşı ama klasör yapısını silme
C:\robocopy C:\Klasor1 D:\Klasor2 /E /MOV
Sadece MOVE anahtarının son harfini silerek kaynak konumun klasör yapısını bozmadan taşıma işleminin yapılmasını sağlar. Bu şekilde kaynaktaki klasör yapısının var olmasını bekleyen başka programların çalışması olumsuz etkilenmez.

Aynalama
C:\robocopy C:\Klasor1 D:\Klasor2 /E /MIR 
Kaynak klasörün tüm dosya yapısının aynısı hedefte oluşturulur. Eğer tüm dosyalar mevcutsa ve robocopy işlemi tekrarlanıyorsa kaynaktaki yeni oluşturulan dosyalar hedefe ilave edilir, veya kaynakta silinmiş dosyalar hedeften de silinir.

Hariç Tutma
Bir klasörü hariç tutarak taşımayı tamamlamak için /XD anahtarı kullanılır.
C:\robocopy C:\Klasor1 D:\Klasor2 /E /XD "C:\Klasor1\temp"
Burada klasör ismi yukarıdaki gibi tam yol ile verilebileceği gibi wildcard'lar ile de verilebilir:
C:\robocopy C:\Klasor1 D:\Klasor2 /E /XD "*temp*"
Benzer şekilde dosya hariç tutma için /XF anahtarı kullanılır.
C:\robocopy C:\Klasor1 D:\Klasor2 /E /XD "C:\Klasor1\bilgi.txt"
Burada da dosya adı tam yol veya wildcard'larla belirtilebilir.

    C:\robocopy C:\Klasor1 D:\Klasor2 /E /XD "*.txt"
---
[1] https://www.youtube.com/watch?v=gTzTeHmKMKw

Hiç yorum yok: