Apakah ada cara untuk menyalin hanya mengubah atau file baru?


57

Saya mencoba untuk menyebarkan situs web dari desktop saya ke server web saya dan sekarang saya melakukan ini:

 xcopy C:\source X:\destination /s

Desktop saya adalah mesin Windows XP, dan saya perlu menyalin ke mesin Windows Server 2008, tetapi ini menyalin semua dan seluruh situs sangat besar dan butuh waktu yang sangat lama untuk menyelesaikan penyalinan.

Apakah ada cara untuk secara khusus menyalin file baru atau yang diperbarui? Saya melihat Anda dapat mengirimkan tanggal yang telah diubah, tetapi saya ingin melihat apakah ada cara yang lebih sederhana untuk membandingkan dengan file tujuan ...

Juga, saya terbuka untuk menggunakan apa pun di luar xcopy yang dapat melakukan pekerjaan juga ...


5
Anda juga dapat mencoba Robocopy.
joerage

Jawaban:


97

Dari dokumentasi XCOPY :

/ d [: mm-dd-yyyy]: Salinan file sumber berubah pada atau setelah tanggal yang ditentukan saja. Jika Anda tidak menyertakan nilai mm-dd-yyyy, xcopy menyalin semua file Sumber yang lebih baru dari file Tujuan yang ada. Opsi baris perintah ini memungkinkan Anda untuk memperbarui file yang telah berubah.

Jadi, dengan contoh Anda, seharusnya dibaca:

xcopy C:\source X:\destination /s /d

2
tanda "/ d" sepertinya kamu harus memberikannya kencan. seperti yang disebutkan dalam pertanyaan, saya tidak memiliki batas waktu dalam pikiran. saya hanya ingin menyalin file baru dan yang diperbarui
leora

10
Tidak, tanggalnya opsional! Itu sebabnya itu dalam tanda kurung. Apakah Anda benar-benar membaca kalimat itu? Dikatakan itu melakukan persis apa yang Anda inginkan!
Markus

4
Satu-satunya hal yang perlu diperhatikan dengan jawaban ini adalah bahwa server web dan workstation Anda diatur ke waktu yang sama! Jika keduanya tidak menggunakan NTP, ini bisa kehilangan file atau menyalin lebih banyak file dari yang diperlukan.
CarlF

5
Meskipun dokumentasi menyatakannya dengan tepat, mudah untuk mengabaikannya /dkarena tanggal tersebut tidak terlalu penting karena tanggal adalah opsional, kemudian lihat opsi lain dan berpikir tidak ada solusi. :-)
Stéphane Gourichon

2
Jika file tidak ada di folder tujuan, tampaknya / D tanpa tanggal yang ditentukan AKAN menyalinnya, yang mungkin bukan hasil yang diinginkan.
tulang

24

Robocopy juga merupakan alternatif yang baik:

Secara default Robocopy hanya akan menyalin file jika sumber dan tujuan memiliki cap waktu atau ukuran file yang berbeda.

Plus, Anda dapat melakukan lebih banyak hal - perintah mirror berguna untuk situs web tempat Anda menghapus file juga.


Terima kasih telah menyebutkan robocopy - selalu menyenangkan untuk mempelajari beberapa utilitas baru yang tersedia.
Casper Leon Nielsen

3

Gunakan opsi / A. Semua file baru atau yang dimodifikasi akan memiliki set atribut arsip.

Periksa tautan di bawah ini untuk perincian:

Sintaks dan contoh perintah xcopy


1
Ya, tetapi kecuali Anda xcopy /M, maka file sumber akan tetap memiliki atribut arsip yang ditetapkan setelah Anda menyalinnya, dan akan disalin di lain waktu. Membutuhkan akses tulis ke file sumber.
Nigel Touch

2

Saya memiliki tugas berikut yang dijadwalkan untuk ~ 80k file dan ~ 2k folder:

xcopy \\sourceserver\share\ Q:\backuptarget\folder\ /i /d /y /he /C /EXCLUDE:C:\backup\list.txt > C:\backup\backup.log

opsi / C melanjutkan salinan bahkan jika "akses ditolak" ke file atau folder karena terbuka atau tidak memiliki izin di bawah akun layanan Anda menjalankan tugas yang dijadwalkan ini di bawah.

">" menimpa log setiap kali jika Anda ingin menambahkan Anda dapat menggunakan pipa ">>".


0

Ada rsync , tapi saya belum pernah menggunakan Windows. Cara saya biasanya menggunakannya di Linux adalah:

rsync -avuz src/ remote:dst/

yang hanya mengirim pembaruan (file baru dan yang dimodifikasi).


-1

Sinkronisasi BitTorrent bekerja dengan sangat baik. Ini akan diperbarui secara otomatis setiap kali Anda mengubah file. Peer to peer. Perbarui beberapa lokasi sekaligus jika perlu. Mudah digunakan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.