FreeBSD初心者運用日記 このページをアンテナに追加

 | 

2007-11-16

[]tarコマンドで指定ファイルや指定ディレクトリを処理対象外にする方法 06:33 tarコマンドで指定ファイルや指定ディレクトリを処理対象外にする方法 - FreeBSD初心者運用日記 を含むブックマーク はてなブックマーク - tarコマンドで指定ファイルや指定ディレクトリを処理対象外にする方法 - FreeBSD初心者運用日記 tarコマンドで指定ファイルや指定ディレクトリを処理対象外にする方法 - FreeBSD初心者運用日記 のブックマークコメント

  • tarコマンドで指定ファイル(又はディレクトリ)を処理対象外にする。
$ tar czvpf ../hoge.tgz --exclude bbb  .
a .
a aaa
a aaa/hoge1
a aaa/hoge2
a aaa/hoge3

上の例だと、excludeオプションで指定したファイル名(もしくはディレクトリ名)は、サブ階層以下でも有効に作用するので注意!

配下のディレクトリだけ、処理対象外にしたい場合は、bbbを./bbbとする。

$ tar czvpf ../hoge.tgz --exclude ./bbb  .
a .
a aaa
a aaa/hoge1
a aaa/hoge2
a aaa/hoge3

この場合は、現在のディレクトリの下にあるbbbという名前のディレクトリのみ処理対象外とする。(サブ階層にbbbというファイルまたはディレクトリがある場合は処理対象になる。)


  • 以下のようにワイルドカードも使える。
$ tar czvpf ../hoge.tgz --exclude "bbb[1-2]*"  .
a .
a aaa
a aaa/hoge1
a aaa/hoge2
a aaa/hoge3
  • 指定したファイル(又はディレクトリ)に書いてあるファイルを除外する方法
$ cat /tmp/exlist
bbb
$ tar czvpf ../hoge.tgz -X /tmp/exlist  .
a .
a aaa
a aaa/hoge1
a aaa/hoge2
a aaa/hoge3

※ 上記の場合だと、指定したディレクトリ配下にあるbbbというファイル名(ディレクトリ含む)を処理対象外にする。

ちなみに、指定した複数のディレクトリのみ処理対象にする場合は、以下のようにする

$ tar czvpf ../hoge.tgz ./aaa ./ccc
 |