bzip2

bzip2 とは、ファイルをBZIP2形式で圧縮するLinux/Unixコマンドである。gzip コマンドと比べて圧縮効率が高いのが特徴である。bzip2 と bunzip2 は実質的に同じプログラムであり、bzip2 コマンドで解凍したり、bunzip2 コマンドで圧縮することもできる。

本サイトのすべてを tar コマンドでまとめたファイルを例に、圧縮率の違いを以下に示す。

圧縮率の違いの例
圧縮方法 ファイルサイズ
segakuin.com.tar (非圧縮) 74127360
gzip -6 segakuin.com.tar 54639263
gzip -1 segakuin.com.tar 55798062
gzip -9 segakuin.com.tar 54582925
bzip2 egakuin.com.tar 54224356

gzip -9 より bzip2 コマンドで圧縮した方が圧縮率が良い。

概要

bzip2 [-cdfkqstvzVL123456789] [filename]...
bzip2 [-h|--help]

引数

圧縮するファイルのパスを引数に指定する。

$ bzip2 example.tar

複数のファイルを引数に指定できる。

$ bzip2 file1 file2 file3

オプション

以下に示すオプションをコマンドに指定できる。

-c
圧縮結果をファイルではなく、標準出力へ出力する。 (POSIX)
--stdout
圧縮結果をファイルではなく、標準出力へ出力する。 (GNU)
-d
BZIP2形式で圧縮されたファイルを解凍する。 (POSIX)
$ bzip2 -d example.txt.bz2
--decompress
BZIP2形式で圧縮されたファイルを解凍する。 (GNU)
$ bzip2 --decompress example.txt.bz2
-z
ファイルをBZIP2形式で圧縮する。 (POSIX)
$ bzip2 -z example.txt

ファイルの圧縮は bzip2 コマンドのデフォルトの動作であるため、オプションを省略できる。

$ bzip2 example.txt
--compress
ファイルをBZIP2形式で圧縮する。 (GNU)
$ bzip2 --compress example.txt

ファイルの圧縮は bzip2 コマンドのデフォルトの動作であるため、オプションを省略できる。

$ bzip2 --compress example.txt
-f
出力ファイルの上書きを強制する。デフォルトの動作では、出力ファイルと同名のファイルが既に存在する場合は、ファイルを出力しない。 (POSIX)
$ bzip2 example.txt
bzip2: Output file example.txt.bz2 already exists.
$ bzip2 -f example.txt
--force
出力ファイルの上書きを強制する。デフォルトの動作では、出力ファイルと同名のファイルが既に存在する場合は、ファイルを出力しない。 (GNU)
$ bzip2 example.txt
bzip2: Output file example.txt.bz2 already exists.
$ bzip2 --force example.txt
-k
圧縮する前のファイルを残しておく。デフォルの動作では、ファイルを圧縮したら、圧縮する前のファイルは削除される。 (POSIX)
$ bzip2 -k example.txt
--keep
圧縮する前のファイルを残しておく。デフォルの動作では、ファイルを圧縮したら、圧縮する前のファイルは削除される。 (GNU)
$ bzip2 --keep example.txt
-s
圧縮、解凍、およびテストのためのメモリ使用量を削減する。サイズが大きなファイルでも 2300 KB のメモリで解凍できる。ただし、通常の約半分の速度になる。 (POSIX)
--small
圧縮、解凍、およびテストのためのメモリ使用量を削減する。サイズが大きなファイルでも 2300 KB のメモリで解凍できる。ただし、通常の約半分の速度になる。 (GNU)
-v
冗長モード(各ファイルの圧縮率を表示する) (POSIX)
$ bzip2 -V example.txt
--verbose
冗長モード(各ファイルの圧縮率を表示する) (GNU)
$ bzip2 --verbos example.txt
-h
ヘルプ・メッセージを表示して、コマンドを終了する。 (POSIX)
$ bzip2 -h
--help
ヘルプ・メッセージを表示して、コマンドを終了する。 (GNU)
$ bzip2 --help
-V
ソフトウェアのバージョン、ライセンス条件および使用条件を表示する。 (POSIX)
$ bzip2 -V
--version
ソフトウェアのバージョン、ライセンス条件および使用条件を表示する。 (GNU)
$ bzip2 --version

関連記事