2008年11月9日日曜日

gz、tgz 等の解凍・圧縮方法

UNIX 系のアプリケーションやパッケージは大抵 gz や tgz で圧縮されているが、日頃こういったファイルは使わないので解凍法をすぐ忘れてしまう。
Linux 上での解凍・圧縮方法」というページに、解凍に使用するコマンドと使用例が非常に要領よく整理されていたので、引用させていただく。

圧縮書庫形式 拡張子 解凍コマンド
TAR 形式+GZIP 形式 〜.tgz, 〜.tar.gz gzip -dc filename | tar xvf -
GNU tarが使える時(zオプションを使える時)
tar zxvf filename
LZH 形式 〜.lzh lha e filename
もしくは
lha x filename
ZIP 形式 〜.zip unzip filename
bzip2(BZ2) 形式 〜.bz2 bzip2 -dc filename
もしくは
bunzip2 -c filename
TAR.BZ2(TBZ) 形式 〜.tar.bz2, 〜.tbz bzip2 -dc filename | tar xvf -
y/z/I オプションを使えるtarコマンドを持っている時
tar yxvf filename
tar zxvf filename
tar Ixvf filename
TAR.Z(TAZ) 形式 〜.tar.Z tar zxvf filename
もしくは
uncompress -c filename | tar xvf -
gzip(GZ) 形式 〜.gz gunzip filename
もしくは
gzip -dc filename
compress(Z) 形式 〜.Z uncompress filename
もしくは
compress -d filename
TAR 形式 〜.tar tar xvf filename
ARJ 形式 〜.arj unarj filename


TAR オプション一覧

tar.gzファイルを展開せずに中身を確認する
% zcat FILE.tar.gz | tar tvf -
もしくは、
% tar tvzf FILE.tar.gz
tarの展開で時間を短くする(-vオプション=詳細モードを表示しない)
% tar xzf FILE.tar.gz
-c, --create 新しいアーカイブを作成する
-d, --diff, --compare アーカイブとファイル・システムとの差分を取る
--delete アーカイブから削除する(磁気テープ上の tarfile に 使 う事は出来ない)
-r, --append アーカイブの最後にファイルを追加する
-t, --list アーカイブ内容の一覧を表示する
-u, --update ア ーカイブ内の同名のファイルより新しいものだけを追加する
-x, --extract, --get アーカイブからファイルを抽出する
z, gzipを通し、tar.gz形式のファイルを一度に圧縮・解凍する。
I, bzip2を通し、tar.bz2形式のファイルを一度に圧縮・解凍する。



UNCOMPRESS(COMPRESS) オプション一覧
圧縮ファイル名は元ファイル名の最後に .Z を付けたものとなります。
Lempel-Zipアルゴリズムを使用して圧縮しており、昔はよく使われていましたが、 今はより圧縮率の高い gzip があるので、特に理由がない限り gzip を使う方がよいと思われます。
-d 圧縮ファイルを展開する
-v ファイルが展開(圧縮)されるたびにメッセージを表示する
-c 圧縮ファイルを標準出力し,元ファイルを残す
-r 再起的にディレクトリ内を展開(圧縮)する



GUNZIP(GZIP) オプション一覧
-d 圧縮ファイルを展開する
-v ファイルが展開(圧縮)されるたびにメッセージを表示する
-c 圧縮ファイルを標準出力し,元ファイルを残す
-r 再起的にディレクトリ内を展開(圧縮)する
-l 圧縮ファイルのリストを表示する
-n 元のファイル名とタイムスタンプは保存しない

0 件のコメント: