7.3. アーカイブの作成と展開 【tar】

$ tar [オプション] [-f アーカイブファイル名] 対象ファイル名 [対象ファイル名]...

アーカイブとは、複数のファイルをひとつのファイルにまとめることを言います。アーカイブを作成/展開するには tar というコマンドを使用します。

代表的なオプションを以下に示します。

表 7-3. tar コマンドのオプション

c新しいアーカイブファイルを作成します。
fアーカイブファイル名を指定します。
tアーカイブの内容を表示します。
v実行結果を表示します。
xアーカイブファイルを展開します。
zアーカイブを gzip で圧縮/伸長します。
jアーカイブを bzip2 で圧縮/伸長します。

tar コマンドは、他にも多くのオプションがありますが、次のオプションが一般的によく使用されます。

例えば、カレントディレクトリに存在する、拡張子が .txt のファイルを新規アーカイブとしてまとめます。

$ tar cvf file.tar *.txt
file1.txt
file2.txt
file3.txt
file4.txt
file5.txt

次に、今作成したアーカイブファイルを展開します。

$ tar xvf file.tar
file1.txt
file2.txt
file3.txt
file4.txt
file5.txt

7.3.1. tar.gz ファイルの操作

.tar.gz という拡張子の付いたファイルは、tar でアーカイブを作成した後に、gzip で圧縮されたファイルです。

ファイルを実際に伸長/展開する前に、どのようなファイルが格納されているのかを確認したいときには、次のコマンドを実行します。

$ tar ztvf file.tar.gz 
-rw-rw-r-- turbo/turbo       135 2001-04-26 12:49:03 test1.txt
-rw-rw-r-- turbo/turbo      1016 2001-04-26 12:54:56 test2.txt
-rw-rw-r-- turbo/turbo       178 2001-04-26 12:49:47 test3.txt
-rw-rw-r-- turbo/turbo      2055 2001-04-26 12:51:20 test4.txt
-rw-rw-r-- turbo/turbo      1578 2001-04-26 12:50:09 test5.txt

実際に展開/伸長するには、次のコマンドを実行します。

$ tar zxvf file.tar.gz
file1.txt
file2.txt
file3.txt
file4.txt
file5.txt

逆に、カレントディレクトリに存在する拡張子が .txt のファイルを tar でアーカイブした後に、gzip で圧縮した file.tar.gz ファイルを作成するには、次のコマンドを実行します。

$ tar zcvf file.tar.gz *.txt
test1.txt
test2.txt
test3.txt
test4.txt
test5.txt

7.3.2. tar.bz2 ファイルの操作

.tar.bz2 という拡張子の付いたファイルは、tar でアーカイブを作成した後に、bzip2 で圧縮されたファイルです。

実際に展開/伸長するには、次のコマンドを実行します。

$ tar xvfj file.tar.bz2
file1.txt
file2.txt
file3.txt
file4.txt
file5.txt

逆に、カレントディレクトリに存在する拡張子が .txt のファイルを tar でアーカイブした後に、bzip2 で圧縮した file.tar.bz2 ファイルを作成するには、次のコマンドを実行します。

$ tar cvfj file.tar.bz2 *.txt
test1.txt
test2.txt
test3.txt
test4.txt
test5.txt