Linuxコマンド【compress】ファイルを圧縮・展開する
当ページのリンクには広告が含まれています。
スポンサーリンク
compressコマンドは、ファイルを圧縮・展開するコマンドです。
compressコマンド
書式
compress [オプション] [ファイル名]
compressコマンドの圧縮には、Lempel-Ziv-Welch (LZW)†というアルゴリズムが利用されています。特許の問題があるため、一般的には圧縮率の高いgzipコマンドが利用されています。
compressコマンドで圧縮したファイルには、拡張子 .Zを付け、tarコマンドでアーカイブ化したファイルには、拡張子 .tar.Z または .taz を付けます。
†Terry A. Welch, IEEE Computer, vol. 17, no. 6 (June 1984)
オプション
-c | 指定したファイル名の圧縮結果を標準出力します。 |
-d | compress形式で圧縮されたファイルを展開します。 |
-f | ファイルが既に存在する場合は上書きします。 |
-v | 圧縮率を表示します。 |
使用例
圧縮率を表示して、ファイルを圧縮します(オプション -v)。圧縮されたファイルには、拡張子 .Zが付けられます。
$ compress -v file.txt file.txt: -- replaced with file.txt.Z Compression: 24.21% $ ls file.txt.Z
圧縮したファイルを展開します(オプション -d)。ファイルが既に存在する場合は、上書きするかどうかを尋ねられます。
$ compress -d file.txt.Z $ ls file.txt
複数のファイルやディレクトリごと、ひとつのアーカイブファイルに圧縮したい場合は「tarコマンド」で複数のファイルやディレクトリをひとつのファイルに変換してから圧縮します。
ここでは、ディレクトリ(dir)をtarファイル(archive.tar)へアーカイブ化してから、圧縮を指定ます。
$ tar -cf archive.tar dir
$ ls
dir archive.tar
$ compress archive.tar
$ ls
archive.tar.Z dir
$ tar -cf archive.tar dir; compress archive.tar ← 複数のコマンドを連続して実行することもできます。
$ ls
archive.tar.Z dir
もしくは、tarコマンドで一発でtar.gz形式に圧縮します。
$ tar cfvZ archive.tar.Z dir dir/ dir/dir2/ dir/dir2/file2 dir/file1 $ ls archive.tar.Z dir