Salin sejumlah besar file tetapi kecualikan sub folder tertentu di Windows

14

Saya ingin membuat cadangan folder kerja saya yang sebagian besar terkandung dalam struktur folder seperti:

www
    - project 1
        - assets
        - node_modules
    - project 1
        - assets
        - node_modules
    - project 1
        - assets
        - node_modules

Saya perlu menyalin semua proyek tetapi mengecualikan folder node_modules dalam setiap proyek. Apakah ada cara mudah untuk melakukan ini dalam jumlah besar? Karena saya punya banyak proyek yang harus saya lalui.

Berjalan di Windows 8.1

Doidgey
sumber
Lihatlah pertanyaan ini: superuser.com/questions/359031/… . Dalam pertanyaan itu sendiri adalah jawaban Anda.
angus

Jawaban:

12

Saya perlu menyalin semua proyek tetapi mengecualikan folder node_modules

Anda dapat menggunakan xcopybersama dengan excludeopsi:

xcopy www backup /exclude:except.txt
  • except.txt berisi daftar file direktori yang akan dikecualikan.

kecuali.txt:

node_modules

/EXCLUDE:file1[+file2][+file3]...

  • Masing-masing file dapat berisi satu atau lebih nama path lengkap atau sebagian untuk dikecualikan.
  • Ketika salah satu dari ini cocok dengan bagian mana pun dari jalur absolut file SOURCE, maka file itu akan dikecualikan.
  • Misalnya, menentukan string seperti \obj\atau .objakan mengecualikan semua file di bawah direktori objatau semua file dengan .objekstensi masing-masing.

Sumber xcopy - Menyalin file dan / atau pohon direktori ke folder lain.


Bacaan lebih lanjut

DavidPostill
sumber
Luar biasa, terima kasih saya akan mencobanya. Saya juga menemukan ini: robocopy SOURCE DESTINATION /mir /xd FOLDER_TO_EXCLUDE- Saya Asumsikan itu bisa bekerja juga?
Doidgey
Sepertinya. Saya tidak tahu robocopy: / Tolong jangan lupa menerima jawaban saya;)
DavidPostill
Berikan robocopymencoba - itu dirancang untuk mendukung pilihan perintah yang sama seperti xcopytetapi fitur banyak perbaikan - Dukungan jalan panjang, buffering, unicode, itu diawetkan cap waktu dll dll Robocopyadalah bagian dari Windows sejak Vista, diinstal di XP.
user1016274
Perintah ini tidak menyalin subfolder dari sumber saya, hanya file di dalam folder itu.
Qwerty
@ DavidPostill Apakah saya serius harus meletakkan direktori yang ingin saya kecualikan dalam file teks dan kemudian referensi file teks itu dalam perintah? Tidak bisakah saya langsung memberi tahu direktori mana yang ingin saya kecualikan? Saya kira robocopylebih baik.
Shayan
9

Terima kasih kepada @DavidPostill untuk jawabannya. Itu berhasil memperlakukan. Namun saya juga berhasil membuat robocopy berfungsi. Bagi mereka yang mungkin bisa membantu, perintahnya adalah:

robocopy SOURCE DEST /mir /xd node_modules

Sumber menjadi folder untuk disalin, dan dest menjadi tujuan. Dan tepat pada akhirnya saya memiliki node_modules sebagai folder yang ingin saya kecualikan.

Doidgey
sumber
3
Bagus ol ' robocopy /mir. Switch yang sangat kuat dapat melakukan banyak hal baik, tetapi perhatikan saja apa yang switch lakukan sebelum Anda menggunakannya. Ini akan menyinkronkan dua dir, termasuk menghapus item jika tidak ada di dir sumber.
Adam Plocher
Terima kasih banyak! Ini bekerja sangat baik untuk menyinkronkan folder Dokumen saya dengan Dropbox, tetapi tidak termasuk folder node_modules karena mereka memakan banyak ruang
Ben Gubler
1
@AdamPlocher Komentar Anda menyelamatkan saya dari kehilangan data. Saya telah menggunakan robocopy sebagai pengganti untuk memindahkan folder, tidak terpikir oleh saya akan menghapus file dari folder target. Untungnya saya dapat memulihkan cadangan dari 4 hari yang lalu, jadi terima kasih.
Hay