最近在Linux下使用tar命令,老把参数弄混。遂决定写此文以备查询使用。在Linux下查看tar命令帮助:tar –help会出现一大片的信息,最后。
Usage: tar [OPTION…] [FILE]…
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
–level=NUMBER dump level for created listed-incremental archive
-n, –seek archive is seekable
–no-check-device do not check device numbers when creating
incremental archives
–no-seek archive is not seekable
–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: –acls Save the ACLs to the archive
–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-acls Don’t extract the ACLs from the archive
–no-delay-directory-restore
cancel the effect of –delay-directory-restore
option
–no-same-owner extract files as yourself (default for ordinary
users)
–no-same-permissions apply the user’s umask when extracting permissions
from the archive (default for ordinary users)
–no-selinux Don’t extract the SELinux context from the archive
–no-xattrs Don’t extract the user/root xattrs from the
archive
–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 superuser)
–preserve same as both -p and -s
–same-owner try extracting files with the same ownership as
exists in the archive (default for superuser)
-s, –preserve-order, –same-order
sort names to extract to match archive
–selinux Save the SELinux context to the archive
–xattrs Save the user/root xattrs to the 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
-I, –use-compress-program=PROG
filter through PROG (must accept -d)
-j, –bzip2 filter the archive through bzip2
-J, –xz filter the archive through xz
–lzip filter the archive through lzip
–lzma filter the archive through lzma
–lzop
–no-auto-compress do not use archive suffix to determine the
compression program
-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-backups exclude backup and lock files
–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-null disable the effect of the previous –null option
–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 overridden 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, –xform=EXPRESSION
use sed replace EXPRESSION to transform file
names File name matching options (affect both exclude and include patterns): –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)
–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 signals 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
–warning=KEYWORD warning control
-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 versionMandatory 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: none, off never make backups
t, numbered make numbered backups
nil, existing numbered if numbered backups exist, simple otherwise
never, simple always make simple backupsValid arguments for the –quoting-style option are: literal
shell
shell-always
c
c-maybe
escape
locale
clocale*This* tar defaults to:
–format=gnu -f- -b20 –quoting-style=escape –rmt-command=/sbin/rmt
–rsh-command=/usr/bin/rshReport bugs to <bug-tar@gnu.org>.