-1

Возможный дубликат:
Архивирование папок и их содержимого в файл .zip в Linux

Мне нужно заархивировать файл на Unix-машине. Файл составляет около 200 МБ. Какой лучший инструмент сжатия? и предоставьте мне команду, чтобы сжать файл.

Структура файла:

- /home/testuser/myfolder/
                     |__  Myfile1.dat [200MB]
                     |__  MyFile2.dat [500MB]

3 ответа3

1

Одна программа для архивирования файлов будет:

$ zip

Чтобы сжать каталог:

$ zip -r archive.zip yourdirectory

Другими популярными являются tar в сочетании, например, со сжатием в стиле Lempel-Ziv (gzip) или Burrows – Wheeler (bzip).

1

По сути, "лучшее" сжатие - это lzma. Порядок доступных сжатий: lzma, bzip2, gzip и наконец сжатие. Когда вы говорите, Unix; что вы имеете в виду? Если у вас есть GNU tar и друзья, лучшим вариантом будет lzma.

LZMA:

tar --lzma -cvf stuff.tar.lzma file1.dat file2.dat

bzip2:

tar -cvjf stuff.tar.bzip2 file1.dat file2.dat

GZIP:

tar -cvzf stuff.tar.gz file1.dat file2.dat

Конечно, если у вас нет инструментов GNU:

компресс:

tar -cvf stuff.tar file1.dat file2.dat
compress stuff.tar
0

Как уже упоминалось, двоичные файлы плохо сжимаются по сравнению с обычным текстом. Я бы просто распаковал файл или распаковал файл и покончил с этим. Например, время, потраченное на сжатие до максимума с помощью LZMA, может в конечном итоге перевесить время, необходимое для передачи нескольких дополнительных МБ, в зависимости от среды передачи.

например.

tar czvf myfolder.tar.gz /home/testuser/myfolder

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .