TAR

TAR(1) User Commands TAR(1)

NAME
tar – The GNU version of the tar archiving utility

SYNOPSIS
tar [OPTION…] [FILE]…

DESCRIPTION
GNU `tar’ saves many files together into a single tape or disk archive,
and can restore individual files from the archive.

EXAMPLES
tar -cf archive.tar foo bar
# Create archive.tar from files foo and bar.

tar -tvf archive.tar
# List all files in archive.tar verbosely.

tar -xf archive.tar
# Extract all files from archive.tar.

Main operation mode:

-A, –catenate, –concatenate
append tar files to an archive

-c, –create
create a new archive

-d, –diff, –compare
find differences between archive and file system

–delete
delete from the archive (not on mag tapes!)

-r, –append
append files to the end of an archive

-t, –list
list the contents of an archive

–test-label
test the archive volume label and exit

-u, –update
only append files newer than copy in archive

-x, –extract, –get
extract files from an archive

Operation modifiers:

–check-device
check device numbers when creating incremental archives
(default)

-g, –listed-incremental=FILE
handle new GNU-format incremental backup

-G, –incremental
handle old GNU-format incremental backup

–ignore-failed-read
do not exit with nonzero on unreadable files

-n, –seek
archive is seekable

–no-check-device
do not check device numbers when creating incremental archives

–occurrence[=NUMBER]
process only the NUMBERth occurrence of each file in the
archive; this option is valid only in conjunction with one of
the subcommands –delete, –diff, –extract or –list and when a
list of files is given either on the command line or via the -T
option; NUMBER defaults to 1

–sparse-version=MAJOR[.MINOR]
set version of the sparse format to use (implies –sparse)

-S, –sparse
handle sparse files efficiently

Overwrite control:

-k, –keep-old-files
don’t replace existing files when extracting

–keep-newer-files
don’t replace existing files that are newer than their archive
copies

–no-overwrite-dir
preserve metadata of existing directories

–overwrite
overwrite existing files when extracting

–overwrite-dir
overwrite metadata of existing directories when extracting
(default)

–recursive-unlink
empty hierarchies prior to extracting directory

–remove-files
remove files after adding them to the archive

-U, –unlink-first
remove each file prior to extracting over it

-W, –verify
attempt to verify the archive after writing it

Select output stream:

–ignore-command-error ignore exit codes of children

–no-ignore-command-error
treat non-zero exit codes of children as error

-O, –to-stdout
extract files to standard output

–to-command=COMMAND
pipe extracted files to another program

Handling of file attributes:

–atime-preserve[=METHOD]
preserve access times on dumped files, either by restoring the
times after reading (METHOD=’replace’; default) or by not
setting the times in the first place (METHOD=’system’)

–delay-directory-restore
delay setting modification times and permissions of extracted
directories until the end of extraction

–group=NAME
force NAME as group for added files

–mode=CHANGES
force (symbolic) mode CHANGES for added files

–mtime=DATE-OR-FILE
set mtime for added files from DATE-OR-FILE

-m, –touch
don’t extract file modified time

–no-delay-directory-restore
cancel the effect of –delay-directory-restore option

–no-same-owner
extract files as yourself

–no-same-permissions
apply the user’s umask when extracting permissions from the
archive (default for ordinary users)

–numeric-owner
always use numbers for user/group names

–owner=NAME
force NAME as owner for added files

-p, –preserve-permissions, –same-permissions
extract information about file permissions (default for supe-
ruser)

–preserve
same as both -p and -s

–same-owner
try extracting files with the same ownership

-s, –preserve-order, –same-order
sort names to extract to match archive

Device selection and switching:

-f, –file=ARCHIVE
use archive file or device ARCHIVE

–force-local
archive file is local even if it has a colon

-F, –info-script=NAME, –new-volume-script=NAME
run script at end of each tape (implies -M)

-L, –tape-length=NUMBER
change tape after writing NUMBER x 1024 bytes

-M, –multi-volume
create/list/extract multi-volume archive

–rmt-command=COMMAND
use given rmt COMMAND instead of rmt

–rsh-command=COMMAND
use remote COMMAND instead of rsh

–volno-file=FILE
use/update the volume number in FILE

Device blocking:

-b, –blocking-factor=BLOCKS
BLOCKS x 512 bytes per record

-B, –read-full-records
reblock as we read (for 4.2BSD pipes)

-i, –ignore-zeros
ignore zeroed blocks in archive (means EOF)

–record-size=NUMBER
NUMBER of bytes per record, multiple of 512

Archive format selection:

-H, –format=FORMAT
create archive of the given format

FORMAT is one of the following:

gnu GNU tar 1.13.x format

oldgnu GNU format as per tar <= 1.12

pax POSIX 1003.1-2001 (pax) format

posix same as pax

ustar POSIX 1003.1-1988 (ustar) format

v7 old V7 tar format

–old-archive, –portability
same as –format=v7

–pax-option=keyword[[:]=value][,keyword[[:]=value]]…
control pax keywords

–posix
same as –format=posix

-V, –label=TEXT
create archive with volume name TEXT; at list/extract time, use
TEXT as a globbing pattern for volume name

Compression options:

-a, –auto-compress
use archive suffix to determine the compression program

-j, –bzip2
filter the archive through bzip2

–lzma filter the archive through lzma

–use-compress-program=PROG
filter through PROG (must accept -d)

-z, –gzip, –gunzip, –ungzip
filter the archive through gzip

-Z, –compress, –uncompress
filter the archive through compress

Local file selection:

–add-file=FILE
add given FILE to the archive (useful if its name starts with a
dash)

–backup[=CONTROL]
backup before removal, choose version CONTROL

-C, –directory=DIR
change to directory DIR

–exclude=PATTERN
exclude files, given as a PATTERN

–exclude-caches
exclude contents of directories containing CACHEDIR.TAG, except
for the tag file itself

–exclude-caches-all
exclude directories containing CACHEDIR.TAG

–exclude-caches-under exclude everything under directories containing
CACHEDIR.TAG

–exclude-tag=FILE
exclude contents of directories containing FILE, except for FILE
itself

–exclude-tag-all=FILE exclude directories containing FILE

–exclude-tag-under=FILE
exclude everything under directories containing FILE

–exclude-vcs
exclude version control system directories

-h, –dereference
follow symlinks; archive and dump the files they point to

–hard-dereference
follow hard links; archive and dump the files they refer to

-K, –starting-file=MEMBER-NAME
begin at member MEMBER-NAME in the archive

–newer-mtime=DATE
compare date and time when data changed only

–no-recursion
avoid descending automatically in directories

–no-unquote
do not unquote filenames read with -T

–null -T reads null-terminated names, disable -C

-N, –newer=DATE-OR-FILE, –after-date=DATE-OR-FILE
only store files newer than DATE-OR-FILE

–one-file-system
stay in local file system when creating archive

-P, –absolute-names
don’t strip leading `/’s from file names

–recursion
recurse into directories (default)

–suffix=STRING
backup before removal, override usual suffix (‘~’ unless over-
ridden by environment variable SIMPLE_BACKUP_SUFFIX)

-T, –files-from=FILE
get names to extract or create from FILE

–unquote
unquote filenames read with -T (default)

-X, –exclude-from=FILE
exclude patterns listed in FILE

File name transformations:

–strip-components=NUMBER
strip NUMBER leading components from file names on extraction

–transform=EXPRESSION use sed replace EXPRESSION to transform file
names

File name matching options (affect both exclude and include pat-
terns):

–anchored
patterns match file name start

–ignore-case
ignore case

–no-anchored
patterns match after any `/’ (default for exclusion)

–no-ignore-case
case sensitive matching (default)

–no-wildcards
verbatim string matching

–no-wildcards-match-slash
wildcards do not match `/’

–wildcards
use wildcards (default for exclusion)

–wildcards-match-slash
wildcards match `/’ (default for exclusion)

Informative output:

–checkpoint[=NUMBER]
display progress messages every NUMBERth record (default 10)

–checkpoint-action=ACTION
execute ACTION on each checkpoint

–index-file=FILE
send verbose output to FILE

-l, –check-links
print a message if not all links are dumped

–no-quote-chars=STRING
disable quoting for characters from STRING

–quote-chars=STRING
additionally quote characters from STRING

–quoting-style=STYLE
set name quoting style; see below for valid STYLE values

-R, –block-number
show block number within archive with each message

–show-defaults
show tar defaults

–show-omitted-dirs
when listing or extracting, list each directory that does not
match search criteria

–show-transformed-names, –show-stored-names
show file or archive names after transformation

–totals[=SIGNAL]
print total bytes after processing the archive; with an argument
– print total bytes when this SIGNAL is delivered; Allowed sig-
nals are: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 and SIGUSR2; the
names without SIG prefix are also accepted

–utc print file modification dates in UTC

-v, –verbose
verbosely list files processed

-w, –interactive, –confirmation
ask for confirmation for every action

Compatibility options:

-o when creating, same as –old-archive; when extracting, same as
–no-same-owner

Other options:

-?, –help
give this help list

–restrict
disable use of some potentially harmful options

–usage
give a short usage message

–version
print program version

Mandatory or optional arguments to long options are also mandatory or
optional for any corresponding short options.

The backup suffix is `~’, unless set with –suffix or SIM-
PLE_BACKUP_SUFFIX. The version control may be set with –backup or
VERSION_CONTROL, values are:

none, off
never make backups

t, numbered
make numbered backups

nil, existing
numbered if numbered backups exist, simple otherwise

never, simple
always make simple backups

Valid arguments for –quoting-style options are:

literal shell shell-always c c-maybe escape locale clocale

*This* tar defaults to: –format=gnu -f- -b20 –quoting-style=escape
–rmt-command=/usr/libexec/rmt –rsh-command=/usr/bin/rsh

AUTHOR
Written by John Gilmore and Jay Fenlason.

REPORTING BUGS
Report bugs to <bug-tar@gnu.org>.

COPYRIGHT
Copyright © 2008 Free Software Foundation, Inc. License GPLv3+: GNU
GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

SEE ALSO
The full documentation for tar is maintained as a Texinfo manual. If
the info and tar programs are properly installed at your site, the com-
mand

info tar

should give you access to the complete manual.

tar 1.20 December 2008 TAR(1)

Related Posts

Technorati Tags: ,

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>