Saya mencari cara untuk zip folder besar menjadi banyak file 20 MB. Saya tidak ingin file zip dipecah menjadi yang lebih kecil. Sebagai gantinya saya ingin mengelompokkan beberapa sub file / folder ke dalam kelompok yang 20 MB ketika di-zip.
Jika Anda tahu cara melakukannya, tolong bantu!
Memperbarui
Saya perlu menggunakan file zip yang lebih kecil saja yang dapat di-unzip sendiri.
Tujuan saya adalah menggunakan virustotal.com untuk memindai folder besar.
Jawaban:
Di winzip: Tambahkan file ke zip baik dengan memulai winzip dan menambahkan atau drag dan drop ke winzip atau klik kanan pada file dan winzip 'tambahkan ke zip ...'
Kemudian di winzip:
Tindakan - Split di bagian bawah 'ukuran bagian' pilih 'ukuran lain' kemudian masukkan 20 dan pilih mb
Selesai!
sumber
Apa yang Anda usulkan pada dasarnya adalah variasi dari Masalah Knapsack , dengan sentuhan tambahan yang, karena kompresi file, Anda tidak mulai mengetahui berapa banyak "ransel" 20MB Anda yang akan ditempati oleh setiap item.
Solusi sepele, tentu saja, hanya dengan zip setiap file secara independen, tetapi gagal untuk mengurangi jumlah file, jadi saya curiga itu tidak akan menjadi solusi yang memuaskan.
Jika saya mengalami masalah ini, saya kira saya akan mulai dengan mengompres setiap file secara terpisah ke lokasi sementara (atau dalam memori, tanpa menuliskannya ke disk), hanya agar saya bisa mendapatkan perkiraan ukuran kompresi untuk masing-masing file. Dengan informasi itu, maka dimungkinkan untuk memutuskan file mana yang harus dikelompokkan bersama dengan salah satu pendekatan standar untuk Masalah Knapsack dan membuat file zip yang sebenarnya.
Dengan asumsi Anda memiliki bahasa scripting yang tersedia untuk Anda dan Anda tahu cara menggunakannya, saya berharap pendekatan ini cukup mudah untuk diotomatisasi; melakukannya secara manual akan sangat membosankan jika Anda memiliki lebih dari beberapa file untuk ditangani ...
sumber
Membiarkan zip melakukan pemisahan untuk Anda akan jauh lebih mudah untuk diotomatisasi daripada mencoba mencari tahu sendiri. Jika sasaran Anda adalah file zip 20MB, Anda harus memperkirakan ukuran terkompresi dari setiap file sebelum menambahkannya ke arsip. Apakah ada alasan Anda tidak ingin membiarkan zip melakukan pemisahan untuk Anda? Begini cara Anda melakukannya dengan gnu zip:
Ini akan membuat 20MB file zip dengan nomor indeks tambahan dalam nama file.
sumber
Di Linux ada program bernama zipsplit yang melakukan hal ini. Itu bagian dari paket zip standar.
Itu bisa dijalankan seperti ini:
untuk membagi bigfile.zip menjadi bagian-bagian dengan ukuran maksimal 20MB. Dan perhatikan bahwa masing-masing file berisi tidak akan terpecah. Dengan demikian setiap bagian dapat dibuka ritsletingnya secara individual. Yang juga berarti bahwa jika ada satu file yang tidak dapat masuk ke dalam ukuran bagian maks pemisahan tidak akan mungkin.
Pembaruan: Tampaknya ada juga binari untuk Windows di info-zip.org, khususnya di ftp://ftp.info-zip.org/pub/infozip/win32/zip300xn-x64.zip untuk Win 64.
sumber
Aku takut bukan prospek yang mudah.
Baru-baru ini saya menulis skrip untuk mengumpulkan file ke dalam subdirektori yang tidak lebih besar dari 4.3GB untuk penyimpanan yang mudah di DVD, tetapi ini semua tidak terkompresi.
Melakukannya dengan kompresi - sekarang ada tantangannya. Anda tidak dapat memprediksi ukuran file setelah kompresi - yang dapat Anda lakukan adalah terus menambahkan file ke zip dalam urutan ukuran hingga melebihi 20MB dan kemudian menghapus file terakhir menggantinya dengan yang lebih kecil sampai turun di bawah 20MB . Jika Anda menghabiskan semua file dan masih> 20MB maka cukup letakkan file terakhir dan lanjutkan ke zip berikutnya.
Agak rumit penulisan naskah dan proses yang agak lambat, menyakitkan.
sumber
Saya tahu ini adalah utas lama, tapi saya baru saja melakukannya dengan 7-zip .
Anda perlu menggunakan opsi "Split ke Volume":
sumber
Dave tampaknya memberikan solusi terprogram yang paling dekat dengan apa yang diminta OP. Saya menemukan bahwa ini dapat dilakukan secara manual juga, jika asumsi berikut diambil (ini bukan masalah teknis murni - ini lebih merupakan masalah organisasi daripada teknis):
Dengan menggunakan metode ini dengan 7-zip (antarmuka dan terminal Windows), saya mempertahankan kompresi pada file zip yang baru dibuat.
Mulailah dengan zip semua file menjadi satu file zip di folder kosong (dengan metode kompresi yang Anda inginkan), misalnya
ALL.zip
, dan buka:Test
tombol untuk mengonfirmasi ukuran kolektif mereka (ini mempertimbangkan kompresi mereka):Extract
atauCopy
tombol sambil menambahkan ke ujung jalan ekstraksi nama folder baru (misalnya:plu_8MB
)ALL.zip
zip, hapus file-file ini yang baru saja Anda ekstrak (menghindari kesalahan ekstraksi ulang) dan navigasikan ke folder atau subset file berikutnya;ALL.zip
ke folder independen, hapus zip itu, dan buka terminal di folder itu ;Tipe:
Tekan ENTERdan ini akan menghasilkan file zip untuk setiap folder yang baru saja Anda ekstrak.
sumber