Apakah ada cara untuk secara selektif mencegah jenis file tertentu dari kompresi di 7-zip, seperti di WinRAR?
Saya mencoba mengompres folder besar (banyak gigabyte), dan saya tidak ingin file yang sudah dikompres (misalnya file ZIP) dikompres ulang - mereka harus disimpan tanpa kompresi.
compression
7-zip
Mehrdad
sumber
sumber
Jawaban:
Ya, dimungkinkan untuk memiliki metode kompresi yang berbeda untuk file yang berbeda dalam arsip 7-Zip yang sama.
Gunakan versi baris perintah 7-Zip dengan
-m
parameter untuk menentukan metode sebagaiCopy
, yang berarti tidak ada kompresi.Contoh:
Untuk info lebih lanjut, lihat sakelar -m (Atur Metode kompresi) .
sumber
-m0=Copy
tidak berhasil, coba-mx=0
.Mari kita asumsikan Anda memiliki file zip dan Anda memiliki file txt terkompresi di folder Anda.
Langkah pertama adalah membuat arsip mengompresi file txt menggunakan perintah berikut.
Anda dapat menggunakan -m untuk mengatur level kompresi, ini juga tergantung pada metode kompresi yang Anda gunakan
Mari kita asumsikan di sini sebagai kompresi standar saja
Anda akan dikompresi.7z sekarang.
Langkah kedua adalah menyalin file yang sudah dikompresi ke arsip ini atau membuat arsip baru
Ada elaborasi lebih lanjut dari perintah pembaruan di sini
Dan jika Anda memiliki kebebasan untuk menggunakan antarmuka grafis, pembaruan dapat dilakukan dengan cara berikut
sumber
Saya membuat skrip PowerShell yang akan dengan cepat memampatkan direktori dengan menyimpan tipe file yang sudah dikompresi (seperti file .zip) tanpa mencoba untuk mengompresnya kembali. Ini menggunakan antarmuka baris perintah 7zip dan menggunakan ekstensi nama file untuk memutuskan apakah akan memampatkan atau hanya menyimpan file yang diberikan.
Anda dapat menemukan skrip di sini: https://gist.github.com/ivanatpr/5dea086172eab573ba71
sumber
Secara teknis, file terkompresi tidak memampatkan lebih lanjut, sesuatu tentang batas entropi atau semacamnya, saya lupa detailnya, tetapi yang paling Anda akan dapatkan adalah kurang dari 2% yang pernah saya lihat.
Kebanyakan kompresor bagus memeriksa kompresi dan hanya menyimpan file yang tidak dapat dikompresi karena mengompresi kemudian akan menambah overhead dan meningkatkan ukuran.
Tentu saja, ada pekerjaan & waktu melihat file di tempat pertama.
Seperti yang dibahas dalam jawaban lain, melakukan beberapa lintasan melewati fileset Anda mungkin akan menjadi solusi terbaik dan mudah skrip.
Buat arsip 7z dan tambahkan segalanya TETAPI file terkompresi dalam satu pass, kemudian tambahkan file pra-kompresi sebagai data non-kompresi. (Saya akan melakukannya dengan cara ini karena hal-hal yang dapat dikompresi akan berada di awal arsip dan yang tidak dapat dimampatkan pada akhirnya. Ini akan mengalir lebih cepat dari drive karena berdekatan)
(terlalu banyak menggunakan 'kompres ...'!)
sumber