Может ли p7zip создавать меньшие zip-файлы, чем winzip?

7-Zip для Windows создает меньшие zip-архивы, чем WinZip, поэтому, возможно, P7zip может создавать меньшие zip-архивы, чем Zip в Linux. Итак, как мне создать zip-файлы с помощью P7zip в Linux?

Экспериментально 7z сжимает немного лучше, чем zip . Я не знаю, как это сравнивается с Winzip.

 $ zip -q zip.zip /bin/{bash,cp,ls} $ zip -q -9 zip9.zip /bin/{bash,cp,ls} $ 7z a 7z.zip /bin/{bash,cp,ls} >/dev/null $ 7z -mx=9 a 7z9.zip /bin/{bash,cp,ls} >/dev/null $ du -ab *.zip | sort -n 550617 7z9.zip 559890 7z.zip 576161 zip9.zip 578382 zip.zip 

Числовая опция ( -9 для zip , -mx=9 для 7z ) говорит инструменту тратить больше времени на достижение лучшего коэффициента сжатия (это шкала от 0 до 9).

Вы получите лучшее сжатие, используя формат 7z вместо zip-формата. Недостатком является то, что вам нужна P7zip для декомпрессии, Winzip не может справиться с этим.

 $ 7z -mx=9 a 7z9.7z /bin/{bash,cp,ls} >/dev/null $ 7z a 7z.7z /bin/{bash,cp,ls} >/dev/null $ du -ab *.7z | sort -n 471964 7z9.7z 472415 7z.7z 

Установите P7zip из пакетов дистрибутива; если у вас есть какое-то странное неполное распределение, которое не включает его, получите его от восходящего потока . Существует три исполняемых файла (иногда пакет отдельно): 7zr обрабатывает только 7z-архивы, 7z обрабатывает многие распространенные форматы архивов (включая zip), а 7za поддерживает дополнительные плагины (полезно для rar, для чего требуется несвободный код, который не связан с 7z сам). Вы можете использовать параметр -m для выбора формата архива, но обычно это не требуется, так как инструмент выбирает формат из имени файла.