[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Problems with Using the exclude
Options
Some users find ‘exclude’ options confusing. Here are some common pitfalls:
-
The main operating mode of
tar
does not act on a file name explicitly listed on the command line, if one of its file name components is excluded. In the example above, if you create an archive and exclude files that end with ‘*.o’, but explicitly name the file ‘dir.o/foo’ after all the options have been listed, ‘dir.o/foo’ will be excluded from the archive. - You can sometimes confuse the meanings of ‘--exclude’ and ‘--exclude-from’. Be careful: use ‘--exclude’ when files to be excluded are given as a pattern on the command line. Use ‘--exclude-from’ to introduce the name of a file which contains a list of patterns, one per line; each of these patterns can exclude zero, one, or many files.
-
When you use ‘--exclude=pattern’, be sure to quote the
pattern parameter, so GNU
tar
sees wildcard characters like ‘*’. If you do not do this, the shell might expand the ‘*’ itself using files at hand, sotar
might receive a list of files instead of one pattern, or none at all, making the command somewhat illegal. This might not correspond to what you want.For example, write:
$ tar -c -f archive.tar --exclude '*.o' directory
rather than:
# Wrong! $ tar -c -f archive.tar --exclude *.o directory
-
You must use use shell syntax, or globbing, rather than
regexp
syntax, when using exclude options intar
. If you try to useregexp
syntax to describe files to be excluded, your command might fail. -
In earlier versions of
tar
, what is now the ‘--exclude-from’ option was called ‘--exclude’ instead. Now, ‘--exclude’ applies to patterns listed on the command line and ‘--exclude-from’ applies to patterns listed in a file.
[ << ] | [ < ] | [ Up ] | [ > ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on November 1, 2013 using texi2html 5.0.