2009年5月13日

Solaris 10 tarコマンドでの除外リストについて

Solaris 10のtarコマンドで一部を除外して展開する方法のmemo

tarコマンドにXオプションと除外リストが記載されたファイルを
指定することで、一部のファイル・ディレクトリを省いて展開する事が
出来ます。

詳細は、 tar(1) – テープアーカイブの作成およびファイルの追加または抽出

man コマンドの説明がわかり辛いので以下実例です。

▼tar tvfコマンドでtarファイルの中身を閲覧

 -bash-3.00$ tar tvf ../test.tar
 drwxr-xr-x 101/10 0 5月 13日 18:13 2009年 testdir/
 drwxr-xr-x 101/10 0 5月 13日 18:13 2009年 testdir/1/
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/a
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/b
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/c
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/d
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/e
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/f
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/g
 drwxr-xr-x 101/10 0 5月 13日 18:14 2009年 testdir/2/
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/2/1
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/2/2
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/2/3
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/2/4
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/2/5
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/2/6
 drwxr-xr-x 101/10 0 5月 13日 18:14 2009年 testdir/3/
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/7
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/8
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/9
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/10
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/11
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/12

 
▼exclude-fileを表示

 -bash-3.00$ cat exclude-file
 testdir/2
 


▼exclude-fileを除外してtarファイルの中身を確認

 -bash-3.00$ tar tvfX ../test.tar ./exclude-file
 drwxr-xr-x 101/10 0 5月 13日 18:13 2009年 testdir/
 drwxr-xr-x 101/10 0 5月 13日 18:13 2009年 testdir/1/
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/a
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/b
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/c
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/d
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/e
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/f
 -rw-r--r-- 101/10 0 5月 13日 18:13 2009年 testdir/1/g
 testdir/2/ を除外します。
 testdir/2/1 を除外します。
 testdir/2/2 を除外します。
 testdir/2/3 を除外します。
 testdir/2/4 を除外します。
 testdir/2/5 を除外します。
 testdir/2/6 を除外します。

 drwxr-xr-x 101/10 0 5月 13日 18:14 2009年 testdir/3/
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/7
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/8
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/9
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/10
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/11
 -rw-r--r-- 101/10 0 5月 13日 18:14 2009年 testdir/3/12


tvfをxvfに変更すれば、excplude_listを指定してのファイル展開になります。

1 件のコメント:

  1. 実例が参考になりました。ありがとうございました。

    返信削除