Selecting Archive Members (GNU tar 1.35)

### 6.2 Selecting Archive Members

File Name arguments specify which files in the file system `tar` operates on, when creating or adding to an archive, or which archive members `tar` operates on, when reading or deleting from an archive. See The Five Advanced `tar` Operations.

To specify file names, you can include them as the last arguments on the command line, as follows:

    tar operation [option1 option2 …] [file name-1 file name-2 …]

If a file name begins with dash (‘`-`’), precede it with `--add-file` option to prevent it from being treated as an option.

By default GNU `tar` attempts to unquote each file or member name, replacing escape sequences according to the following table:

Escape | Replaced with
--- | ---
\a | Audible bell (ASCII 7)
\b | Backspace (ASCII 8)
\f | Form feed (ASCII 12)
\n | New line (ASCII 10)
\r | Carriage return (ASCII 13)
\t | Horizontal tabulation (ASCII 9)
\v | Vertical tabulation (ASCII 11)
\? | ASCII 127
\n | ASCII n (n should be an octal number of up to 3 digits)

A backslash followed by any other symbol is retained.

This default behavior is controlled by the following command line option:

`--unquote`

  Enable unquoting input file or member names (default).

`--no-unquote`

  Disable unquoting input file or member names.

If you specify a directory name as a file name argument, all the files in that directory are operated on by `tar`.

If you do not specify files, `tar` behavior differs depending on the operation mode as described below:

When `tar` is invoked with `--create` (`-c`), `tar` will stop immediately, reporting the following:

    $ tar cf a.tar
    tar: Cowardly refusing to create an empty archive
    Try 'tar --help' or 'tar --usage' for more information.

If you specify either `--list` (`-t`) or `--extract` (`--get`, `-x`), `tar` operates on all the archive members in the archive.

If run with `--diff` option, tar will compare the archive with the contents of the current working directory.

If you specify any other operation, `tar` does nothing.

By default, `tar` takes file names from the command line. However, there are other ways to specify file or member names, or to modify the manner in which `tar` selects the files or members upon which to operate. In general, these methods work both for specifying the names of files and archive members.