COMPACT — сжатие и распаковка файлов NTFS в CMD

Команда COMPACT управляет встроенным сжатием NTFS прямо из командной строки. Сжимайте файлы, папки и целые разделы без архиваторов — прозрачно для приложений.

Команда COMPACT управляет встроенным сжатием файловой системы NTFS: позволяет сжимать и распаковывать файлы, папки и подкаталоги прямо из командной строки. Сжатые файлы остаются прозрачно доступными для всех приложений — Windows разжимает данные «на лету» при чтении.

Синтаксис команды COMPACT

COMPACT [/C | /U] [/S[:каталог]] [/A] [/I] [/F] [/Q] [/EXE[:алгоритм]] [файл [...]]
  • /C — сжать указанные файлы или папку
  • /U — распаковать (убрать сжатие)
  • файл — путь к файлу, папке или маска (например *.log)

Без ключей /C и /U COMPACT отображает состояние сжатия текущего каталога.

Ключи и параметры

Ключ Описание Пример
/C Включить сжатие для файлов/папки COMPACT /C C:\Logs\app.log
/U Отключить сжатие (распаковать) COMPACT /U C:\Logs\app.log
/S[:каталог] Рекурсивно применить к указанному каталогу и всем подкаталогам COMPACT /C /S:C:\Backup
/A Обработать также скрытые и системные файлы COMPACT /C /A C:\Windows\Logs
/I Продолжать выполнение даже при ошибках COMPACT /C /I /S:C:\Data
/F Принудительно сжать файлы, даже если они уже сжаты COMPACT /C /F C:\file.txt
/Q Тихий режим — выводить только итоговую статистику COMPACT /C /Q /S:C:\Logs
/EXE[:алгоритм] Использовать сжатие для исполняемых файлов (алгоритмы: XPRESS4K, XPRESS8K, XPRESS16K, LZX) COMPACT /C /EXE:LZX C:\App\app.exe
/? Вывод справки COMPACT /?

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

Просмотр состояния сжатия каталога

Перед сжатием полезно проверить, какие файлы уже сжаты, а какие нет.

COMPACT C:\Backup\*

COMPACT выведет список файлов с пометками: «C» — сжатый, «U» — несжатый, и итоговую статистику экономии места.

Сжатие одного файла

Быстрый способ освободить место для крупного редко используемого файла.

COMPACT /C "C:\Archive\database_backup.bak"

Файл будет сжат средствами NTFS. Приложения продолжат читать его прозрачно — никакой ручной распаковки не требуется.

Распаковка файла

Если сжатие мешает производительности (например, часто читаемый файл базы данных), отключите его.

COMPACT /U "C:\DB\production.mdf"

Сжатие будет снято; NTFS больше не будет компрессировать этот файл.

Рекурсивное сжатие всей папки

Сжимает все файлы в папке и всех её подкаталогах. Удобно для папок с архивами, логами или резервными копиями.

COMPACT /C /S:C:\OldProjects

Команда пройдёт по всем подкаталогам C:\OldProjects и установит флаг сжатия. Новые файлы, созданные в этой папке, тоже будут сжиматься автоматически.

Тихое рекурсивное сжатие с игнорированием ошибок

Для использования в скриптах автоматического обслуживания: ошибки не прерывают выполнение, вывод минимален.

COMPACT /C /S:C:\Logs /Q /I

По завершении будет выведена только итоговая статистика: сколько файлов обработано и сколько места сэкономлено.

Сжатие исполняемых файлов алгоритмом LZX

Начиная с Windows 10, COMPACT поддерживает алгоритмы Compact OS для сжатия системных и программных файлов с лучшей степенью сжатия.

COMPACT /C /EXE:LZX "C:\Program Files\MyApp\myapp.exe"

LZX обеспечивает более высокую степень сжатия, чем стандартный алгоритм NTFS, но медленнее при декомпрессии. Подходит для редко запускаемых приложений.

Частые ошибки и решения

Ошибка / симптом Причина Решение
«Отказано в доступе» Нет прав на изменение файла или папки Запустите CMD с правами администратора: ПКМ на cmd.exe → «Запуск от имени администратора»
Команда выполнилась, но место на диске не освободилось Файловая система не NTFS (FAT32, exFAT) или диск — SSD с включённым сжатием на уровне прошивки COMPACT работает только с NTFS. Проверьте ФС командой fsutil fsinfo volumeinfo C:
Сжатие исполняемых файлов вызывает замедление запуска Алгоритм LZX медленнее декомпрессируется на слабых CPU Используйте XPRESS4K вместо LZX для часто запускаемых приложений
Ключ /EXE не распознаётся Версия Windows старше Windows 10 (ключ /EXE добавлен в Windows 10) На Windows 7/8 используйте только стандартные ключи /C и /U
После сжатия файл невозможно открыть Сжатие прервалось (отключение питания, ошибка диска) Запустите chkdsk C: /f для исправления ошибок файловой системы

Когда применять, а когда нет

Команда COMPACT оптимальна для папок с редко используемыми данными: архивы, резервные копии, старые логи, инсталляционные пакеты. На жёстких дисках (HDD) сжатие NTFS нередко ускоряет чтение за счёт уменьшения объёма данных при медленных I/O. Требует прав администратора и работает только с томами NTFS.

Не применяйте COMPACT к файлам баз данных с активными транзакциями, к файлам подкачки и гибернации, к папкам с часто изменяемыми данными на SSD — прирост места будет минимальным при значительном росте нагрузки на CPU. В PowerShell прямого аналога нет: для управления сжатием NTFS из PowerShell используйте WMI-класс Win32_Directory или вызывайте compact.exe через Start-Process.

FAQ

Сжатие NTFS безопасно для данных?

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

Насколько эффективно сжатие NTFS?

Для текстовых файлов, логов и документов — 30–70% экономии. Для уже сжатых форматов (ZIP, JPEG, MP4, exe с UPX) — менее 5%, сжатие смысла не имеет. COMPACT сам сообщит коэффициент сжатия по итогам операции.

Как проверить, сжат ли файл?

Выполните COMPACT имя_файла без ключей — команда покажет статус «C» (compressed) или «U» (uncompressed). Либо посмотрите свойства файла в Проводнике: вкладка «Общие» → «Размер на диске» будет меньше «Размера».

COMPACT работает на USB-флешке?

Нет. Большинство USB-накопителей отформатированы в FAT32 или exFAT. COMPACT требует NTFS. Отформатируйте накопитель в NTFS командой format X: /fs:ntfs, тогда сжатие будет доступно.

Можно ли отменить сжатие всей папки?

Да: COMPACT /U /S:C:\папка рекурсивно снимет сжатие со всех файлов и подкаталогов. Для больших папок операция может занять несколько минут.

Нужен ли перезапуск Windows после применения COMPACT?

Нет. Изменения вступают в силу немедленно. Исключение — системные файлы Windows, которые заблокированы в момент выполнения команды; для них может потребоваться перезагрузка с загрузочного носителя.

Оцените статью
( Пока оценок нет )
MW10
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.