Windowsコマンド虎の巻

compact

compactは、NTFS圧縮形式でファイルを圧縮/解凍するコマンドです。

解説

NTFS圧縮をすると内部的に圧縮されるため、ファイルの使い勝手は変わらずにディスク容量を節約することができます。
なのでcompactの圧縮は、一般的な圧縮形式であるzipやlzhなどとは異なるものです。

GUI上では、ファイルを右クリック⇒「プロパティ(R)」⇒全般タブ内の「詳細設定(D)」をクリックして表示される属性の詳細画面内の「内容を圧縮してディスク領域を節約する」にチェックを入れる事でNTFS圧縮になります。

Windows 属性の詳細画面

構文

(構文)
COMPACT [オプション] <ファイル名>
【オプション】
オプション説明
/Cファイルを圧縮する
/Uファイルを解凍する
/S:フォルダ名指定したフォルダ配下を全て処理対象に含める
/A隠しファイルやシステムファイルも表示する
/Iエラー発生時でも処理を続行する
/F既に圧縮済みのファイルも圧縮対象に含める
/Q重要な情報のみ表示する
/EXE頻繁に読み取られ、変更されることのない実行可能ファイルに合わせて最適化された圧縮を使用する
/?コマンドのヘルプを表示する

サンプル

「C:¥test.txt」をNTFS圧縮形式で圧縮する

C:¥>compact /C test.txt C:¥: のファイルを圧縮しています test.txt 11755 : 8192 = 1.4 : 1 [OK] 1 ディレクトリ内の 1 ファイルが圧縮されました。 合計 11,755 バイトのデータが、8,192 バイトに格納されました。 データの圧縮率は 1.4 : 1 です。

NTFS圧縮形式で圧縮された「test.txt」を解凍する

C:¥>compact /U test.txt C:¥ のファイルを圧縮解除しています test.txt [OK] 1 ディレクトリ内の 1 ファイルが圧縮解除されました。

「C:¥dir」フォルダ配下のファイルを全てNTFS圧縮形式で圧縮する

C:¥>compact /C /S:dir 新しいファイルを圧縮するように、ディレクトリ C:¥dir¥ を設定します [OK] C:¥dir¥ のファイルを圧縮しています test01.txt 76720 : 76720 = 1.0 : 1 [OK] test02.txt 1079 : 1079 = 1.0 : 1 [OK] 2 ディレクトリ内の 3 ファイルが圧縮されました。 合計 77,799 バイトのデータが、77,799 バイトに格納されました。 データの圧縮率は 1.0 : 1 です。

コマンドのヘルプを表示する

compact /?

備考

  • compactの語源は英語の「compact(ぎっしり詰まった)」です。
  • ディスク容量が一杯になってしまった時に、ディスク容量を手軽に容量を増やせるので便利です。
  • 元々圧縮形式のファイル(zipやlzhなど)はcompactしてもサイズは小さくなりません。