Skip to content

Архиватор на базе встроенной библиотеки Golang

License

Notifications You must be signed in to change notification settings

gh0st17/archiver

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

archiver

Архиватор на базе встроенной библиотеки Golang

О проекте

Данная программа реализована в целях изучения языка Golang.

Возможности

  • Конкурентное сжатие и распаковка с возможностью параллелизма
  • Несколько алгоритмов для сжатия
  • Поддержка внешних словарей для совместимых алгритмов
  • Просмотр содержимого архива в виде списка или детального отчета
  • Проверка целостности данных в архиве и распаковка с учетом проверки
  • Поддержка символических ссылок

Справка по использованию

Сжатие:     archiver [Флаги] <путь до архива> <список директории, файлов для сжатия>
Распаковка: archiver [-o <путь к директории для распаковки>] <путь до архива>
Просмотр:   archiver [-l | -s] <путь до архива>

Флаги:
  -L int
    	Уровень сжатия от -2 до 9 (Не применяется для LZW)
    	 -2 -- Использовать только сжатие по Хаффману
    	 -1 -- Уровень сжатия по умолчанию (6)
    	  0 -- Без сжатия
    	1-9 -- Произвольная степень сжатия (default -1)
  -V	Печать номера версии и выход
  -c string
    	Тип компрессора: GZip, LZW, ZLib, Flate (default "gzip")
  -dict string
    	Путь к файлу словаря
    	Файл словаря представляет собой набор часто встречающихся
    	фрагментов данных, которые можно использовать для улучшения
    	сжатия. При декомпрессии необходимо использовать тот же
    	словарь для восстановления данных.
    	Поддерживаетя только компрессорами Zlib и Flate.
  -f	Автоматически заменять файлы при распаковке без подтверждения
  -help
    	Показать эту помощь
  -integ
    	Проверка целостности данных в архиве
  -l	Печать списка файлов и выход
  -log
    	Печатать логи
  -mstat
    	Печать статистики использования ОЗУ после выполнения
  -o string
    	Путь к директории для распаковки
  -s	Печать информации о сжатии и выход (игнорирует -l)
  -v	Печатать обработанные файлы
  -xinteg
    	Распаковка с учетом проверки целостности данных в архиве