コマンドリファレンス - ファイル群の操作 tar

 
1. tar ファイル群の操作
2.  主なオプション
3.  使用例
4.  Linux で使用するならば

1. tar ファイル群の保管

 ファイル群を保管します。  本来は、tape archiverの略で、磁気テープにファイルを保管するのが目的で作られたコマンドですが、現在は、バックアップを取っておく時に使用します。

> tar [オプション] ファイル名 [ファイル名]

2. 主なオプション

 主なオプションには、以下のものがあります。
オプション 意 味
-c 新しいアーカイブを作成して、指定されたファイルをアーカイブに書込む
-J, --xz アーカイブを xz 形式で圧縮する
-t アーカイブ内容をリスト表示する
-x アーカイブからファイルを抽出する
-v -c でアーカイブに書くファイルや -x でアーカイブから取り出すファイル名をリスト表示する
-y アーカイブを bzip2 で圧縮する
-z アーカイブを gzip で圧縮する
-f 指定されたファイルを読書きする

 -z オプションは、CentOS では共通でしたが、Solaris にはありません。
 Solaris では、いったん .tar ファイルを作成してそのファイルを gzip や compress で圧縮します。

 GNU tar では、-y オプションは、-j オプションになります。
 GNU tar では、展開時に圧縮時と同じオプションを指定しますが、FreeBSD では、展開時に圧縮形式を判断してくれます。

3. 使用例

 このコマンドの使用方法を以下に例示しますので、参考にして下さい。

/home/a > ls -R b
c       d       e
/home/a > tar -cvzf b.tgz b
b/
b/c
b/d
b/e
/home/a > ls
b/      b.tgz
/home/a > tar -tvzf b.tgz
drwxr-xr-x user/user 0   2/ 8 12:21 2002 b/
-rw-r--r-- user/user 0   2/ 8 12:21 2002 b/c
-rw-r--r-- user/user 0   2/ 8 12:21 2002 b/d
-rw-r--r-- user/user 0   2/ 8 12:21 2002 b/e
/home/a > mv b.tgz ../z
/home/a > cd ../z
/home/z > tar -xvzf b.tgz
b/
b/c
b/d
b/e
/home/z > ls -R b
c       d       e
 おわかりいただけたでしょうか?

4. Linux で使用するならば

 オプションの項で示したように、Linux で適度な圧縮をかけてアーカイブを作成するには

$ tar -cjf xxx.tar ディレクトリ
 展開時は

$ tar -xjf xxx.tar