TAR(1) TAR(1) NAME tar - The GNU version of the tar archiving utility SYNOPSIS tar [ - ] A --catenate --concatenate | c --create | d --diff --compare | --delete | r --append | t --list | u --update | x --extract --get [ options ] pathname [ pathname ... ] DESCRIPTION This manual page documents the GNU version of tar , an archiving pro gram designed to store and extract files from an archive file known as a tarfile. A tarfile may be made on a tape drive, however, it is also common to write a tarfile to a normal file. The first argument to tar must be one of the options: Acdrtux, followed by any optional func tions. The final arguments to tar are the names of the files or direc tories which should be archived. The use of a directory name always implies that the subdirectories below should be included in the archive. EXAMPLES tar -xvvf foo.tar extract foo.tar tar -xvvzf foo.tar.gz extract gzipped foo.tar.gz tar -cvvf foo.tar foo/ tar contents of folder foo in foo.tar FUNCTION LETTERS One of the following options must be used: -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 for use on mag tapes!) -r, --append append files to the end of an archive -t, --list list the contents of an archive -u, --update only append files that are newer than copy in archive -x, --extract, --get extract files from an archive OTHER OPTIONS --allow-name-mangling re-enable handling of GNUTYPE_NAMES which is now disabled by default --anchored force exclusion patterns to match initial subsequences --atime-preserve dont change access times on dumped files -a, --auto-compress with --create, selects compression algorithm basing on the suf fix of the archive file name -b, --blocking-factor N use record size of Nx512 bytes (default N=20) -B, --read-full-records reblock as we read (for reading 4.2BSD pipes) --backup[=TYPE] back up files instead of overwriting (TYPE=numbered, existing, simple) -C, --directory DIR change to directory DIR --checkpoint print periodic checkpoints --checkpoint-action this action allows to specify an action to be executed upon hit ting a checkpoint. Recognized actions are: dot, echo (the default), echo=string, ttyout=string, exec=cmdline, and sleep=value. Any number of --checkpoint-action options can be specified, the actions will be executed in order of their appearance in the command line. --check-device enables comparing device numbers. This is the default. --no-check-device disables comparing device numbers during preparatory stage of an incremental dump. This allows to avoid creating full dumps if the device numbers change (e.g. when using an LVM snapshot) --exclude=PATTERN exclude files matching PATTERN -f, --file [HOSTNAME:]F use archive file or device F (otherwise value of TAPE environ ment variable; if unset, "-", meaning stdin/stdout) -F, --info-script F, --new-volume-script F run script at end of each tape (implies -M) --force-local archive file is local even if it has a colon -G, --incremental create/list/extract old GNU-format incremental backup -g, --listed-incremental F create/list/extract new GNU-format incremental backup --group G set group to G while adding files -h, --dereference dont dump symlinks; dump the files they point to --hard-dereference during archive creation, dereferences hard links and stores the files they refer to, instead of creating usual hard link members (type 1) --help print help message -i, --ignore-zeros ignore blocks of zeros in archive (normally mean EOF) --ignore-case ignore case when excluding files --ignore-failed-read dont exit with non-zero status on unreadable files -j, --bzip2 filter archive through bzip2, use to decompress .bz2 files. WARNING: some previous versions of tar used option -I to filter through bzip2. When writing scripts, use --bzip2 instead of -j so that both older and newer tar versions will work. -k, --keep-old-files keep existing files; dont overwrite them from archive -K, --starting-file F begin at file F in the archive --lzma selects LZMA compression algorithm -l, --check-links print a message if not all links are dumped -L, --tape-length N change tapes after writing N*1024 bytes -m, --touch dont extract file modified time --transform expr applies filename transformations. The argument to this option can be a list of replace expressions, separated by semicolon (as in sed). Filename transformations are applied to symbolic link targets during both creation and extraction. This option may be specified any number of times, the specified transofrma tions will be applied in turn. -M, --multi-volume create/list/extract multi-volume archive --mode M set permissions to M while adding files -N, --after-date DATE, --newer DATE only store files newer than DATE --newer-mtime DATE only store files whose contents have changed after DATE --no-anchored allow exclusion patterns to match any substring (the default) --no-ignore-case match patterns case sensitively (the default) --no-recursion do not recurse into subdirectories -o, --no-same-owner extract files with owner set to current user (the default for non-root users) --no-same-permissions apply umask to extracted files (the default for non-root users) --no-wildcards do not use wildcards when excluding files --no-wildcards-match-slash dont let wildcards match "/" when excluding files --null for -T, use "NUL" instead of newline as filename terminator --numeric-owner always use numbers for user/group names --old-archive, --portability write a V7 format archive, rather than ANSI format. These options are deprecated, please use --format=v7 instead. --one-file-system stay in local file system when creating an archive --owner O set owner to O while adding files -O, --to-stdout extract files to standard output -p, --same-permissions, --preserve-permissions ignore umask when extracting files (the default for root) -P, --absolute-names dont strip leading /s from file names --posix create POSIX compliant archive. This option is deprecated, please use --format=posix instead. --preserve like -p -s -R, --block-number show block number within archive with each message --record-size SIZE use SIZE bytes per record --recursion recurse into directories (the default) --recursive-unlink remove existing directories before extracting directories of the same name --remove-files remove files after adding them to the archive --rsh-command=CMD Use remote COMMAND instead of rsh. This option exists so that people who use something other than the standard rsh (e.g., a Kerberized rsh) can access a remote device. -S, --sparse handle sparse files efficiently -s, --same-order, --preserve-order list of names to extract is sorted to match archive --same-owner extract files with owner as specified in archive (the default for root) --show-omitted-dirs mention directories that are being skipped over --strip-components n Strip the given number of leading directory components --strip, --strip-components N Strips the first N components from archive members pathnames when unpacking. --suffix SUFFIX append SUFFIX to make backup files (default ~) -T, --files-from F get names to extract or archive from file F --totals display total bytes written after creating an archive -U, --unlink-first unlink & recreate files instead of overwriting --use-compress-program PROG filter the archive through PROG (which must accept -d) -v, --verbose verbosely list files processed -V, --label NAME create archive with volume name NAME --version print tar program version number --volno-file F keep track of current volume (of a multi-volume archive) in F -w, --interactive, --confirmation ask for confirmation for every action -W, --verify attempt to verify the archive after writing it --wildcards use wildcards when excluding files (the default) --wildcards-match-slash allow wildcards to match "/" (the default) -X, --exclude-from=FILE exclude files matching patterns listed in FILE -Z, --compress, --uncompress filter the archive through compress -z, --gzip, --gunzip, --ungzip filter the archive through gzip -[0-7][lmh] specify drive and density ENVIRONMENT The behavior of tar is controlled by the following environment vari ables, among others: TAPE Device or file to use for the archive if --file is not speci fied. If this environment variable is unset, use stdin or std out instead. TAR_OPTIONS Options to prepend to those specified on the command line, sepa rated by whitespace. Embedded backslashes may be used to escape whitespace or backslashes within an option. In addition, the value of the blocking factor is made available to info and checkpoint scripts via environment variable TAR_BLOCKING_FACTOR. BUGS The GNU folks, in general, abhor man pages, and create info documents instead. Unfortunately, the info document describing tar is licensed under the GFDL with invariant cover texts, which violates the Debian Free Software Guidelines. As a result, the info documentation for tar is not included in the Debian package. If you want to read the complete documentation for GNU tar, please refer to the online version at This man page was created for the Debian distribution. It does not describe all of the functionality of tar, and it is often out of date. Patches to improve the coverage and/or accuracy of this man page are appreciated, and should be filed as wishlist severity bugs against the Debian tar package, not submitted to the GNU tar maintainers. 29 Aug 2007 TAR(1)