tar --help就可以看到。。第一次发现tar这么多命令可以用。

mark。


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

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

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


Operation modifiers:


 -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

 -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

 -n, --seek                 Archive is seekable

     --occurrence[=NUMBER]  process only the NUMth 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

                            -T option. NUMBER defaults to 1.

     --overwrite            overwrite existing files when extracting

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

     --recursive-unlink     empty hierarchies prior to extracting directory

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

 -S, --sparse               handle sparse files efficiently

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

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


Handling of file attributes:


     --acls                 Save the ACLs to the archive

     --atime-preserve       don't change access times on dumped files

     --group=NAME           force NAME as group for added files

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

 -m, --touch                don't extract file modified time

     --no-acls              Don't extract the ACLs from the archive

     --no-same-owner        extract files as yourself

     --no-same-permissions  do not extract permissions information

     --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 permissions information

     --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

     --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 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   SIZE 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


 -j, --bzip2                filter the archive through bzip2

     --old-archive, --portability

                            same as --format=v7

     --pax-option=keyword[[:]=value][,keyword[[:]=value], ...]

                            control pax keywords

     --posix                same as --format=posix

     --use-compress-program=PROG

                            filter through PROG (must accept -d)

 -V, --label=TEXT           create archive with volume name NAME. At

                            list/extract time, use TEXT as a globbing pattern

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

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


Local file selection:


     --after-date=DATE      same as -N

     --anchored             exclude patterns match file name start

     --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 directories containing a cache tag

 -h, --dereference          dump instead the files symlinks point to

     --ignore-case          exclusion ignores case

 -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-anchored          exclude patterns match after any / (default)

     --no-ignore-case       exclusion is case sensitive (default)

     --no-recursion         avoid descending automatically in directories

     --no-wildcards         exclude patterns are plain strings

     --no-wildcards-match-slash   exclude pattern wildcards do not match '/'

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

 -N, --newer=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)

     --strip-components=NUMBER   strip NUMBER leading components from file

                            names

     --suffix=STRING        backup before removal, override usual suffix ('~'

                            unless overridden by environment variable

                            SIMPLE_BACKUP_SUFFIX

 -T, --files-from=FILE-OF-NAMES   get names to extract or create from file

                            NAME

     --wildcards            exclude patterns use wildcards (default)

     --wildcards-match-slash   exclude pattern wildcards match '/' (default)

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


Informative output:


     --checkpoint           display progress messages every 10th record

 -v, --verbose              verbosely list files processed


     --check-links          print a message if not all links are dumped

     --index-file=FILE      send verbose output to FILE

 -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

     --totals               print total bytes written while creating archive

     --utc                  print file modification dates in UTC

 -w, --interactive, --confirmation

                            ask for confirmation for every action


Compatibility options:


     --allow-name-mangling  when creating, allow GNUTYPE_NAMES mangling --

                            considered dangerous

 -o                         when creating, same as --old-archive. When

                            extracting, same as --no-same-owner


Other options:


 -?, --help                 Give this help list

     --license              Print license and exit

     --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 SIMPLE_BACKUP_SUFFIX.

The version control may be set with --backup or VERSION_CONTROL, values are:


 t, numbered     make numbered backups

 nil, existing   numbered if numbered backups exist, simple otherwise

 never, simple   always make simple backups


*This* tar defaults to:

--format=gnu -f- -b20 --rmt-command=/sbin/rmt --rsh-command=/usr/bin/rsh


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