Использование сжатия файлов в разделах с файловой системой NTFS позволяет экономить дисковое пространство системы. Сжатие и распаковка файлов выполняются ”на лету” и прозрачно для пользователя.

1. Описание команды COMPACT.

1.1. Формат команды:

C:\ COMPACT [/C | /U] [/S[:dir]] [/A] [/I] [/F] [/Q] [/EXE[:algorithm]] [/CompactOs[:option]] [filename […]]

1.2. Параметры:

  • /C — Сжимает выбранные файлы. Каталоги маркируются так, чтобы добавляемые позже файлы также были сжаты, если не указан параметр /EXE.
  • /U — Распаковывает указанные файлы. Каталоги маркируются так, чтобы добавляемые позже файлы не были сжаты. Если указан параметр /EXE, будут распакованы только файлы, сжатые как исполняемые файлы; если этот параметр пропущен, будут распакованы только файлы, сжатые в системе NTFS.
  • /S — Выполняет указанную операцию над файлами в выбранном каталоге и всех его подкаталогах. По умолчанию используется текущий каталог.
  • /A — Отображает файлы с атрибутами «скрытый» и «системный». По умолчанию эти файлы пропускаются.
  • /I — Продолжает выполнять указанную операцию даже после возникновения ошибок. По умолчанию выполнение программы COMPACT прерывается при возникновении ошибки.
  • /F — Принудительно сжимает все указанные файлы, даже если некоторые из них уже сжаты. По умолчанию сжатые файлы пропускаются.
  • /Q — Выводит лишь наиболее существенные сведения.
  • /EXE — Использование сжатия, оптимизированного для исполняемых файлов, которые часто считываются и не изменяются. Поддерживаемые алгоритмы:
    — XPRESS4K (наиболее быстрый, по умолчанию)
    — XPRESS8K
    — XPRESS16K
    — LZX (наиболее высокая степень сжатия)
  • /CompactOs Установка или запрос состояния сжатия системы. Поддерживаемые параметры:
    query — запрос состояния сжатия системы.
    always — сжатие всех двоичных файлов ОС и установка для системы состояния сжатия, которое может изменить только администратор.
    never — распаковка всех двоичных файлов ОС и установка для системы состояния отсутствия сжатия, которое может изменить только администратор.
  • filename — Указывает имя файла, имя каталога или шаблон имен файлов.

Параметры командной строки могут различаться для разных версий ОС Windows. так например, параметры /EXE и /CompactOS отсутствуют в версии утилиты compact.exe для Windows 7-8 и могут использоваться только в среде Windows 10 и более поздних.

2. Примеры использования.

При вызове без параметров, программа COMPACT отображает состояние сжатия для текущего каталога и всех содержащихся в нем файлов.

2.1. Отобразить информацию о сжатии файлов в текущем каталоге:

C:\ compact

2.2. Отобразить информацию о сжатии всех файлов в каталоге E:\TEMP:

C:\ compact E:\TEMP\*.*

Результат:

Просмотр каталога E:\TEMP\
 Новые файлы, добавляемые в этот каталог, не будут сжаты.
 
      593 :       593 = 1,0 к 1 C crab.css
   301106 :    233472 = 1,3 к 1 C arj.exe
   529629 :    529629 = 1,0 к 1 C beepcodes.zip
30478146 :  30363648 = 1,0 к 1 C crow.avi
206401536 : 129277952 = 1,6 к 1 C erd50.iso
     1609 :      1609 = 1,0 к 1 C proxylist.txt
 
Всего файлов: 6, каталогов: 1.
Из них сжато: 5, не сжато: 1.
Данные объемом 237 712 619 байт сохранены в 160 406 903 байт.
Степень сжатия 1,5 к 1.

2.3. Включить сжатие всех файлов с расширением .iso в каталоге E:\TEMP:

C:\ compact /C E:\TEMP\*.iso

2.4. Отобразить информацию о состоянии сжатия файла erd50.iso в текущем каталоге:

C:\ compact erd50.iso

2.5. Отобразить минимальную информацию о состоянии сжатия файла erd50.iso:

C:\ compact /Q E:\TEMP\erd50.iso

2.6. Включить сжатие всех файлов в каталоге E:\TEMP:

C:\ compact /C E:\TEMP\

2.7. Включить сжатие файлов для каталога E:\TEMP\ и всех его подкаталогов:

C:\ compact /C /S E:\TEMP\*.*

2.8. Отобразить состояния сжатия для ОС Windows 10:

C:\ compact /CompactOS:query

Возможно использование команды без подпараметра query – compact /CompactOS.

2.9. Отключить сжатие двоичных файлов для ОС Windows 10:

C:\ compact /CompactOS:never

При выполнении данной команды выполняется распаковка всех сжатых файлов и отключается режим сжатия. Операция может занимать довольно продолжительное время. Для включения или выключения режима сжатия требуются права администратора системы.

2.10. Включить сжатие файлов для ОС Windows 10:

C:\ compact /CompactOS:always

При выполнении данной команды выполняется упаковка всех файлов и включается режим сжатия. Операция может занимать довольно продолжительное время.

2.11. Выполнить сжатие, оптимизированное для всех файлов, которые часто считываются и не изменяются в каталоге C:\distr с применением алгоритма, обеспечивающего максимальную степень сжатия для Windows 10:

C:\ compact /C /EXE:LZX C:\distr\*.*

2.12. Распаковать файлы, сжатые применением алгоритма LZX, обеспечивающего максимальную степень сжатия для Windows 10:

C:\ compact /U /EXE:LZX C:\distr\*.*

2.13. Распаковать файлы, сжатые с применением алгоритма XPRESS4K, обеспечивающего максимальное быстродействие:

C:\ compact /U /EXE:XPRESS4K C:\distr\*.*