Linuxコマンド - ファイルの圧縮と解凍

提供:MochiuWiki - SUSE, Electronic Circuit, PCB
2022年4月30日 (土) 19:24時点におけるWiki (トーク | 投稿記録)による版 (→‎tar.xz形式)
ナビゲーションに移動 検索に移動

概要

ここでは、Linuxでファイルの圧縮、解凍方法を記載する。


tar.gz形式

圧縮

tar zcf  xxxx.tar.gz <ファイルのパスまたはディレクトリのパス>
# または
tar zcvf xxxx.tar.gz <ファイルのパスまたはディレクトリのパス>


解凍

tar xf   xxxx.tar.gz
# または
tar zxvf xxxx.tar.gz



tar.bz2形式

圧縮

tar jcf  xxxx.tar.bz2 <ファイルのパスまたはディレクトリのパス>
# または
tar jcvf xxxx.tar.bz2 <ファイルのパスまたはディレクトリのパス>


解凍

tar xf   xxxx.tar.bz2
# または
tar jxvf xxxx.tar.bz2



tar.xz形式

XZ形式とは、LZMA2のデータ圧縮アルゴリズムを採用したデータ圧縮フォーマットおよびその圧縮プログラムである。
圧縮に時間が掛かるが圧縮率は良い。

圧縮

tar Jcf  xxxx.tar.xz <ファイルのパスまたはディレクトリのパス>
# または
tar Jcvf xxxx.tar.xz <ファイルのパスまたはディレクトリのパス>


解凍

tar xf   xxxx.tar.xz
# または
tar Jxvf xxxx.tar.xz



tar.lz形式

LZ形式とは、LZIPのデータ圧縮アルゴリズムを採用したデータ圧縮フォーマットおよびその圧縮プログラムである。
圧縮に時間が掛かるが圧縮率は良い。

tar.lz形式へ圧縮および解凍するには、Lzipをインストールする必要がある。

  • パッケージ管理システムからインストールする場合
    sudo zypper install lzip

  • ソースコードからインストールする場合
    Lzipの公式Webサイトにアクセスして、ソースコードをダウンロードする。
    ダウンロードしたファイルを解凍する。
    tar xf lzip-<バージョン>.tar.lz
    cd lzip-<バージョン>
    ビルド用ディレクトリを作成する。
    mkdir build && cd build
    Lzipをビルドおよびインストールする。
    ../configure --prefix=<Lzipのインストールディレクトリ>
    make -j $(nproc)
    make install
    ~/.profileファイル等に環境変数PATHを追記する。
    vi ~/.profile
    export PATH="/<Lzipのインストールディレクトリ>/bin:$PATH"


圧縮

tar --lzip -cf  xxxx.tar.lz <ファイルのパスまたはディレクトリのパス>
# または
tar --lzip -cvf xxxx.tar.lz <ファイルのパスまたはディレクトリのパス>


圧縮(圧縮率を上げる場合)

tar cf xxxx.tar <ファイルのパスまたはディレクトリのパス>; lzip -9k xxxx.tar


解凍

tar xf   xxxx.tar.lz
# または
tar xvf  xxxx.tar.lz



tar形式

圧縮

tar cf  xxxx.tar <ファイルのパスまたはディレクトリのパス>
# または
tar cvf xxxx.tar <ファイルのパスまたはディレクトリのパス>


解凍

tar xf  xxxx.tar
# または
tar xvf xxxx.tar



zip形式

圧縮

zip r xxxx.zip ディレクトリ名

解凍

unzip xxxx.zip


Windows上で日本語ファイル名のファイルをzipで圧縮して、Linux上にてunzipコマンドで解凍すると文字化けすることがあるが、
unarで解凍すると文字化けしない。

unar xxxx.zip


表. tarコマンドにおけるオプションの意味

オプション 説明
z gz
c 新しいtarファイルを作る(create)
x 解凍する(extract)
v 圧縮・解凍状況を表示する(verbose)
f 圧縮ファイルを指定する(filename)
j bz2
J xz