ファイルを圧縮するコマンド一覧です。圧縮は解凍より頻繁に使わないので、備忘録も兼ねて記事にしました。
圧縮コマンド一覧
.tar.bz / .tar.gz / .tar.Z への圧縮
これら3つへの圧縮は tar -zcvf でできます。
$ tar -zcvf foobar.tar.bz foobar
$ tar -zcvf foobar.tar.gz foobar
$ tar -zcvf foobar.tar.Z foobar
.tar.bz2 への圧縮
.tar.bz2への圧縮は tar -jcvf でできます。
$ tar -jcvf foobar.tar.bz2 foobar
.tar.xz への圧縮
.tar.xzへの圧縮は tar -Jcvf でできます。
$ tar -Jcvf foobar.tar.xz foobar
.tar.zst への圧縮
.tar.zstへの圧縮は以下の通り。
// tar 1.31 以降は -I で指定しなくても自動で対応している
$ tar -cvf foobar.tar.zst foobar
// tar 1.22 以降は -I で圧縮形式指定する
$ tar -I zstd -cvf foobar.tar.zst foobar
.zip への圧縮
数字は圧縮率を表していて 0~9まで指定できます。数字が大きければ大きいほど圧縮率が高くなりますが、その分時間もかかります。
数字を指定しないと、初期設定値である 6 で圧縮されます。
$ zip -9 -l foobar.zip foobar
注意点として、ディレクトリを圧縮する場合は -r オプションを付ける必要があります。
「foobar ディレクトリ」をzip圧縮 (-lオプションは、LFからCRLFへ変換)
$ zip -9 -lr foobar.zip foobar
.7z への圧縮
foobarディレクトリを7zipに圧縮します。-mxオプションは1~9まで指定することができ、数字が大きいほど圧縮率が高くなり、圧縮に時間がかかります。-mxオプションを指定しない場合、初期値である 6 が設定されます。
$ 7z a -mx9 foobar.7z foobar
.gz への圧縮
数字は圧縮率を表していて 1~9まで指定でき、数字が大きいほど高圧縮になります。数字を指定しない場合は、デフォルト値である 6 が設定されます。gzipはディレクトリや複数のファイルをまとめて圧縮することができません。まとめて圧縮したい場合は tar.gz に圧縮してください。
圧縮後は元のファイルが削除されますので、ご注意ください。
$ gzip -9 foobar.txt
元のファイルを残す場合は、次のようにしてください。
$ gzip -9 -k foobar.txt
// もしくは
$ gzip -9 -c foobar.txt > foobar.txt.gz
.bz2 への圧縮
数字は圧縮率を表していて 1~9まで指定でき、数字が大きいほど高圧縮になります。数字を指定しない場合は、デフォルト値である 6 が設定されます。bzip2は、ディレクトリや複数のファイルをまとめて圧縮することができません。まとめて圧縮したい場合は tar.bz2 に圧縮してください。
圧縮後は元のファイルも削除されてしまいますので、ご注意ください。
$ bzip2 -9 foobar.txt
元のファイルを削除したくない場合は、次のようにしてください。
$ bzip2 -9 -k foobar.txt
// もしくは
$ bzip2 -9 -c foobar.txt > foobar.txt.bz2
.xz への圧縮
数字は圧縮率を表していて 0~9まで指定でき、数字が大きいほど高圧縮になります。数字を指定しない場合は、デフォルト値である 6 が設定されます。xzは、ディレクトリや複数のファイルをまとめて圧縮することができません。まとめて圧縮したい場合は tar.xz に圧縮してください。
-e (–extreme)は より多くのCPU時間を使って圧縮率を向上させるオプションです。圧縮後は元のファイルが削除されてしまいますのでご注意ください。
$ xz -e -9 foorbar.txt
元のファイルを残したい場合は、以下のように -k オプションを付け加えてください。
$ xz -ek -9 foorbar.txt
// もしくは
$ xz -ce -9 foobar.txt > foobar.txt.xz
.lzh への圧縮
foobarファイルを lzh に圧縮します。
$ lha a foobar.lzh foobar
lhaコマンドが使えない場合は、次のコマンドを打ってlhaをインストール後、上記コマンドを実行してください。
$ sudo apt -y install lhasa
.rar への圧縮
foobarファイルを rar に圧縮します。
$ rar a foobar.rar foobar
rarコマンドが使用できない場合、次のコマンドをタイプして rar をインストールしてください。
$ sudo apt -y install rar
.cab への圧縮
foobarディレクトリをcabに圧縮します。
$ lcab -r foobar foobar.cab
lcabコマンドが使えない場合、以下を入力してlcabをインストールしてください。
$ sudo apt -y install lcab
.Z への圧縮
foobar をZファイルで圧縮。
$ compress foobar
コメント