Tips

LinuxServer ファイル管理について ファイルのリンク、圧縮、伸長、アーカイブ

ファイルの圧縮、伸長

  • gzipコマンドとgunzipコマンド
  • ファイルの圧縮にはgzipコマンドがよく使われます。gzipコマンドで圧縮されたファイルは拡張子.gzが付加されます。

    [コマンド書式]
    gzip -オプション ファイル名

    gzipコマンドの主なオプションは次のとおりです。

    オプション 説明
    -c 標準出力へ出力し、ファイルへの出力はしません
    -d 圧縮ファイルを伸長します
    -r ディレクトリ内のファイルも圧縮します
    -v 圧縮状況を表示します

    [コマンド実行例]secure-20121111を圧縮し、伸長します。

    $ ls -lh secure-20121111
    -rw-r–r– 1 test test 18M 11月 20 13:58 secure-20121111

    secure-20121111を圧縮
    $ gzip secure-20121111

    $ ls -lh secure-20121111
    ls: secure-20121111 にアクセスできません: そのようなファイルやディレクトリはありません

    $ ls -lh secure-20121111.gz
    -rw-r–r– 1 test test 1001K 11月 20 13:58 secure-20121111.gz

    secure-20121111を伸長
    $ gzip -d secure-20121111.gz

    $ ls -lh secure-20121111.gz

    ls: secure-20121111.gz にアクセスできません: そのようなファイルやディレクトリはありません

    $ ls -lh secure-20121111
    -rw-r–r– 1 test test 18M 11月 20 13:58 secure-20121111

    圧縮前のファイルも残しておきたい場合は、-cオプションを使用し、標準出力へ出力したものをファイル出力へリダイレクトして保存します。

    $ gzip -c secure-20121111 > secure-20121111.gz

    gzip形式で圧縮したファイルはgzip -dで伸張できますが、gunzipコマンドを使用しても
    ファイルの慎重が行えます。

    [コマンド書式]
    gunzip -オプション ファイル名

    [コマンド実行例]secure-20121111を伸長
    ls -lh secure-20121111.gz
    -rw-r–r– 1 test test 1001K 11月 20 13:58 secure-20121111.gz

    $ gunzip secure-20121111.gz

    $ ls -lh secure-20121111
    -rw-r–r– 1 test test 18M 11月 20 13:58 secure-20121111

  • bzip2コマンドとbunzip2コマンド
  • gzipの他にbzip2コマンドでもファイルの圧縮は行えます。
    gzipコマンドに比べ、ファイルの圧縮率が高く、圧縮後のファイルサイズは小さくなりますが、処理には時間が掛かります。

    [コマンド書式]
    bzip2 -オプション ファイル名

    bzip2コマンドの主なオプションは次のとおりです。

    オプション 説明
    -c 標準出力へ出力し、ファイルへの出力はしません
    -d 圧縮ファイルを伸長します
    -r ディレクトリ内のファイルも圧縮します
    -v 圧縮状況を表示します

    [コマンド実行例]secure-20121111を圧縮し、伸長します。

    $ ls -lh secure-20121111
    -rw-r–r– 1 test test 18M 11月 20 13:58 secure-20121111

    secure-20121111を圧縮します。secure-20121111.gzに比べてファイルのサイズが小さくなっています。

    $ bzip2 secure-20121111

    ls -lh secure-20121111.bz2
    -rw-r–r– 1 test test 718K 11月 20 13:58 secure-20121111.bz2

    secure-20121111を伸長
    $ bzip2 -d secure-20121111.bz2

    $ ls -lh secure-20121111
    -rw-r–r– 1 test test 18M 11月 20 13:58 secure-20121111

    gzip同様、圧縮前のファイルも残しておきたい場合は、-cオプションを使用し、標準出力へ出力したものを
    ファイル出力へリダイレクトして保存します。

    $ bzip2 -c secure-20121111 > secure-20121111.bz2

    「.bz2」形式で圧縮したファイルはbunzip2コマンドを使用してもファイルの伸長が行えます。

    [コマンド書式]
    bunzip2 -オプション ファイル名

    [コマンド実行例]secure-20121111.bz2を伸長
    ls -lh secure-20121111.bz2
    -rw-r–r– 1 test test 718K 11月 20 13:58 secure-20121111.bz2

    $ bunzip2 secure-20121111.gz

    $ ls -lh secure-20121111
    -rw-r–r– 1 test test 18M 11月 20 13:58 secure-20121111

    ファイルのアーカイブ

    ファイルアーカイブとは、複数のファイルやディレクトリをまとめて一つのファイルにすることを指します。

  • tarコマンド
  • ファイルアーカイブにはtarコマンドを使用します。
    tarコマンドはファイルを非圧縮でアーカイブしますが、オプションを併用することで、
    圧縮された状態のアーカイブファイルを作成することが可能です。

    [コマンド書式]
    tar -オプション ファイル名/ディレクトリ名

    tarコマンドの主なオプションは次のとおりです

    オプション 説明
    -c アーカイブを作成する
    -x アーカイブからファイルを抽出します
    -t アーカイブの内容を確認します
    -f アーカイブファイル名を指定します
    -z gzipによる圧縮/展開をします
    -j bzip2による圧縮/展開をします
    -v 処理の詳細情報を表示します
    -u アーカイブ内にある同名のファイルより新しいものだけを追加します
    -r アーカイブ内にファイルを追加します

    tarコマンドのオプションでは「-」を省略することができます。

    [コマンド実行例]join01.txt,join02.txt,join03.txtをtarfile01.tarにアーカイブ
    $ tar cvf tarfile01.tar join01.txt join02.txt join03.txt
    join01.txt
    join02.txt
    join03.txt

    オプション「z」や、「j」を付けることにより圧縮したアーカイブファイルになります。

    [コマンド実行例]tarfile01.tarをカレントディレクトリに展開
    $ tar xvf tarfile01.tar
    join01.txt
    join02.txt
    join03.txt

    カレントディレクトリに同名のファイルがある場合、アーカイブファイル内のファイルで上書きされますので注意が必要です。

    Linux認定資格 LPICを取るなら・・

    Linux資格 「LPIC Lv1」徹底解説 連載目次

    Recent News

    Recent Tips

    Tag Search