Scroll to navigation

TAR(1) User Commands TAR(1)

NAME

tar - manual page for tar 1.23

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.

Note that this manual page contains just very brief description (or more like a list of possible functionality) originally generated by the help2man utility. The full documentation for tar is maintained as a Texinfo manual. If the info and tar programs are properly installed at your site, the command `info tar' should give you access to the complete manual.

EXAMPLES

# Create archive.tar from files foo and bar.
# List all files in archive.tar verbosely.
# Extract all files from archive.tar.
Main operation mode:
append tar files to an archive
create a new archive
find differences between archive and file system
delete from the archive (not on mag tapes!)
append files to the end of an archive
list the contents of an archive
test the archive volume label and exit
only append files newer than copy in archive
extract files from an archive

Common Options:

change to directory DIR
use archive file or device ARCHIVE
filter the archive through bzip2
filter the archive through xz
extract information about file permissions (default for superuser)
verbosely list files processed
filter the archive through gzip

Operation modifiers:

check device numbers when creating incremental archives (default)
handle new GNU-format incremental backup
handle old GNU-format incremental backup
do not exit with nonzero on unreadable files
dump level for created listed-incremental archive
archive is seekable
do not check device numbers when creating incremental archives
archive is not seekable
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
set version of the sparse format to use (implies --sparse)
handle sparse files efficiently

Overwrite control:

don't replace existing files when extracting, treat them as errors
don't replace existing files when extracting, silently skip over them
don't replace existing files that are newer than their archive copies
preserve metadata of existing directories
overwrite existing files when extracting
overwrite metadata of existing directories when extracting (default)
empty hierarchies prior to extracting directory
remove files after adding them to the archive
remove each file prior to extracting over it
attempt to verify the archive after writing it

Select output stream:

--ignore-command-error ignore exit codes of children

treat non-zero exit codes of children as error
extract files to standard output
pipe extracted files to another program
Handling of file attributes:
Save the ACLs to the archive
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 setting modification times and permissions of extracted directories until the end of extraction
force NAME as group for added files
force (symbolic) mode CHANGES for added files
set mtime for added files from DATE-OR-FILE
don't extract file modified time
Don't extract the ACLs from the archive
cancel the effect of --delay-directory-restore option
extract files as yourself (default for ordinary users)
apply the user's umask when extracting permissions from the archive (default for ordinary users)
Don't extract the SELinux context from the archive
Don't extract the user/root xattrs from the archive
always use numbers for user/group names
force NAME as owner for added files
extract information about file permissions (default for superuser)
same as both -p and -s
try extracting files with the same ownership as exists in the archive (default for superuser)
sort names to extract to match archive
Save the SELinux context to the archive
Save the user/root xattrs to the archive

Device selection and switching:

use archive file or device ARCHIVE
archive file is local even if it has a colon
run script at end of each tape (implies -M)
change tape after writing NUMBER x 1024 bytes
create/list/extract multi-volume archive
use given rmt COMMAND instead of rmt
use remote COMMAND instead of rsh
use/update the volume number in FILE

Device blocking:

BLOCKS x 512 bytes per record
reblock as we read (for 4.2BSD pipes)
ignore zeroed blocks in archive (means EOF)
NUMBER of bytes per record, multiple of 512

Archive format selection:

create archive of the given format
FORMAT is one of the following:
GNU tar 1.13.x format
GNU format as per tar <= 1.12
POSIX 1003.1-2001 (pax) format
same as pax
POSIX 1003.1-1988 (ustar) format
old V7 tar format
same as --format=v7
--pax-option=keyword[[:]=value][,keyword[[:]=value]]...
control pax keywords
--posix
same as --format=posix
create archive with volume name TEXT; at list/extract time, use TEXT as a globbing pattern for volume name

Compression options:

use archive suffix to determine the compression program
filter through PROG (must accept -d)
filter the archive through bzip2
filter the archive through xz
filter the archive through lzip
filter the archive through lzma

--lzop

do not use archive suffix to determine the compression program
filter the archive through gzip
filter the archive through compress

Local file selection:

add given FILE to the archive (useful if its name starts with a dash)
backup before removal, choose version CONTROL
change to directory DIR
exclude files, given as a PATTERN
exclude backup and lock files
exclude contents of directories containing CACHEDIR.TAG, except for the tag file itself
exclude directories containing CACHEDIR.TAG
CACHEDIR.TAG
exclude contents of directories containing FILE, except for FILE itself

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

exclude everything under directories containing FILE
exclude version control system directories
follow symlinks; archive and dump the files they point to
follow hard links; archive and dump the files they refer to
begin at member MEMBER-NAME in the archive
compare date and time when data changed only
disable the effect of the previous --null option
avoid descending automatically in directories
do not unquote filenames read with -T

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

only store files newer than DATE-OR-FILE
stay in local file system when creating archive
don't strip leading `/'s from file names
recurse into directories (default)
backup before removal, override usual suffix ('~' unless overridden by environment variable SIMPLE_BACKUP_SUFFIX)
get names to extract or create from FILE
unquote filenames read with -T (default)
exclude patterns listed in FILE

File name transformations:

strip NUMBER leading components from file names on extraction
use sed replace EXPRESSION to transform file names
File name matching options (affect both exclude and include patterns):
patterns match file name start
ignore case
patterns match after any `/' (default for exclusion)
case sensitive matching (default)
verbatim string matching
wildcards do not match `/'
use wildcards (default)
wildcards match `/' (default for exclusion)

Informative output:

display progress messages every NUMBERth record (default 10)
execute ACTION on each checkpoint
send verbose output to FILE
print a message if not all links are dumped
disable quoting for characters from STRING
additionally quote characters from STRING
set name quoting style; see below for valid STYLE values
show block number within archive with each message
show tar defaults
when listing or extracting, list each directory that does not match search criteria
show file or archive names after transformation
print total bytes after processing the archive; with an argument - print total bytes when this SIGNAL is delivered; Allowed signals are: SIGHUP, SIGQUIT, SIGINT, SIGUSR1 and SIGUSR2; the names without SIG prefix are also accepted
print file modification dates in UTC
verbosely list files processed
warning control
ask for confirmation for every action

Compatibility options:

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

Other options:

-?, --help
give this help list
disable use of some potentially harmful options
give a short usage message
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 SIMPLE_BACKUP_SUFFIX. The version control may be set with --backup or VERSION_CONTROL, values are:

never make backups
make numbered backups
numbered if numbered backups exist, simple otherwise
always make simple backups

Valid arguments for the --quoting-style option are:

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

DEFAULTS

*This* tar defaults to: --format=gnu -f- -b20 --quoting-style=escape --rmt-command=/sbin/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 © 2010 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.

March 2012 tar 1.23