Skip to content

tar コマンド#

tar は、ファイルとディレクトリをアーカイブにまとめるツールで、主にUNIXやLinux環境で使われます。 tar は "tape archive" の略で、元々はテープドライブにデータをバックアップするためのツールとして開発されました。 主にファイルのバックアップや配布、転送のために使用されます。

主な tar コマンドのオプションは以下の通りです:

  1. 作成:新しいアーカイブを作成するために -c オプションを使用します。

    tar -cvf archive_name.tar file1 file2 dir1
    

  2. 展開/抽出:アーカイブからファイルやディレクトリを展開するために -x オプションを使用します。

    tar -xvf archive_name.tar
    

  3. 一覧:アーカイブの中身を表示するために -t オプションを使用します。

    tar -tvf archive_name.tar
    

  4. 圧縮:アーカイブを圧縮するために、gzipbzip2 と組み合わせて使用します。例えば、gzip で圧縮する場合は、以下のように -z オプションを追加します。

    tar -czvf archive_name.tar.gz dir1
    

    bzip2 で圧縮する場合は -j オプションを使用します。

    tar -cjvf archive_name.tar.bz2 dir1
    

  5. ファイル名:アーカイブファイルの名前を指定するために -f オプションを使用します。このオプションの後にアーカイブファイルの名前を書きます。

  6. 冗長出力:コマンドが行っている操作を表示するために -v (verbose)オプションを使用します。

以上は tar の基本的なオプションの一部です。実際にはさまざまなオプションや使い方がありますので、具体的な使用方法や詳細は man tartar --help を参照することをおすすめします。

オプション#

tar コマンドの主なオプションについて説明します。

  1. 基本の操作

    • -c : 新しいアーカイブを作成。
    • -x : アーカイブを展開。
    • -t : アーカイブの内容をリスト表示。
  2. ファイル名を指定

    • -f : アーカイブのファイル名を指定。このオプションがない場合、tar はデフォルトで標準入力/出力を使用します。
  3. 圧縮/解凍

    • -z : gzip で圧縮・解凍。
    • -j : bzip2 で圧縮・解凍。
    • -J : xz で圧縮・解凍。
    • --lzma : lzma で圧縮・解凍。
  4. 詳細出力

    • -v : 詳細モード(verbose)。実行中の操作を詳細に表示。
  5. その他のオプション

    • -p : ファイルのパーミッションをそのまま保存。
    • -P : ファイル名の先頭の/を保存(絶対パスを維持)。
    • -h : シンボリックリンクの参照先のファイル/ディレクトリをアーカイブに追加。
    • --exclude : アーカイブから特定のファイルやディレクトリを除外。

      tar -cvf archive.tar --exclude=dir_to_exclude/* directory
      

    • -C : ディレクトリを変更。アーカイブ作成時や展開時に、特定のディレクトリを基準として操作する際に使用。

      tar -xvf archive.tar -C /path/to/extract/to
      

    • -W : マルチボリュームのアーカイブを扱う場合に使用。

この他にも多くのオプションがあります。全てのオプションや詳しい使い方については、man tar コマンドを使用して、tar のマニュアルページを参照すると良い。

よく使うコマンドの組み合わせ#

tar コマンドでよく使われるオプションの組み合わせについて、いくつかの典型的なシナリオを以下に示します。

  1. ディレクトリやファイルをアーカイブにまとめる:

    tar -cvf output.tar dir1 file1 file2
    

  2. アーカイブを gzip で圧縮:

    tar -czvf output.tar.gz dir1
    

  3. アーカイブを bzip2 で圧縮:

    tar -cjvf output.tar.bz2 dir1
    

  4. gzip 圧縮されたアーカイブを展開:

    tar -xzvf archive.tar.gz
    

  5. bzip2 圧縮されたアーカイブを展開:

    tar -xjvf archive.tar.bz2
    

  6. アーカイブ内のファイルやディレクトリの一覧を表示:

    tar -tvf archive.tar
    

  7. 特定のファイルやディレクトリをアーカイブから除外:

    tar -czvf output.tar.gz --exclude=dir_to_exclude/* directory
    

  8. 特定のディレクトリにアーカイブを展開:

    tar -xzvf archive.tar.gz -C /path/to/extract/to
    

  9. ファイルのパーミッションを維持してアーカイブを展開:

    tar -xzvpf archive.tar.gz
    

これらの組み合わせは日常的な作業で頻繁に使用されるものです。