`
rjhym
  • 浏览: 67050 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux tar命令详解

 
阅读更多
最近使用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 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:

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

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


分享到:
评论

相关推荐

    linux tar命令详解

    ### Linux tar 命令详解 #### tar命令概述 `tar` 命令是 Linux 系统中用于创建、管理归档文件的强大工具。它最初设计用于在磁带(Tape Archive)上创建文件存档,因此得名 `tar`。随着时间的发展,`tar` 命令的...

    linux_tar命令详解

    ### Linux tar 命令详解 #### tar 命令简介 `tar` 命令是 Linux 和 Unix 系统中最常用的文件打包工具之一。它的全称是 Tape Archive,最初设计用于在磁带上创建档案文件,但现在已被广泛应用于各种存储介质上。`tar...

    Linux/Unixtar命令详解

    tar命令详解 tar命令详解 tar命令详解 tar命令详解

    linux tar详解

    ### Linux tar命令详解 #### 一、tar命令概述 **tar** 是 Linux 下最常用的文件打包工具之一,它能够帮助用户高效地管理文件和目录,无论是用于数据备份还是文件传输,都非常实用。tar 的名字来源于“tape archive...

    LINUX tar命令文档

    【Linux tar命令详解】 tar命令是Linux系统中用于文件和目录管理的重要工具,它能够将一组文件和目录打包成一个单一的档案文件,方便备份、传输或存储。tar最初是设计用于磁带备份,但现在广泛应用于各种存储介质,...

    linux TAR命令参数详解

    Linux TAR命令参数详解 Linux TAR命令是Linux系统中的一种归档工具,用于将文件或目录归档到一个单独的文件中,以便于存储和传输。TAR命令的参数众多,本文将对TAR命令的参数进行详细的解释。 基本参数 * -A, --...

    linux下tar命令详解.txt

    ### Linux下tar命令详解 #### 一、tar命令概述 `tar`命令是Linux系统中最常用的文件打包与压缩工具之一。“tar”源自“tape archive”,最初用于将数据存档到磁带设备上,但如今已经广泛应用于各种类型的文件操作...

    wxh tar命令详解

    ### wxh tar命令详解 #### 一、简介 在Linux系统中,`tar`命令是进行文件打包与压缩处理的重要工具之一。它可以帮助用户轻松地将多个文件或目录打包成一个单独的文件(通常称为“tarball”),并提供选项支持压缩...

    tar命令详解.pdf

    文件中提到的“tar命令详解.pdf”文档显然是关于Linux系统中tar命令的使用说明。tar命令是一个非常重要的命令行工具,主要用于创建、维护、修改和提取备份文件,这些文件通常被称为tar包或tarball。tar不仅可以打包...

    linux命令详解阿手册PDF文档

    《Linux命令详解手册》是一份全面的Linux命令参考资料,它详细介绍了Linux系统中广泛使用的一系列命令,覆盖了系统管理、系统设置、文档编辑以及压缩备份等多个方面。为了方便用户查阅,该手册按照命令的功能进行了...

    linux主要shell命令详解

    ### Linux主要Shell命令详解 #### 一、Shell概念与作用 **Shell** 是连接用户与Linux操作系统的桥梁,用户通过Shell与系统进行交互。在Linux系统中,Shell扮演着多种角色,包括命令语言、命令解释程序以及程序设计...

    linux命令详解词典

    这份“Linux命令详解词典”由施威铭研究室提供,涵盖了Linux系统下的所有基本及高级操作命令,对于学习和理解Linux系统的管理至关重要。下面将详细阐述一些关键的Linux命令。 1. **ls**:列出目录内容。`ls`命令...

    tar和gzip命令详解

    "tar和gzip命令详解" tar 命令是 Linux 系统中常用的档案管理工具,它可以将多个文件或目录压缩成一个档案文件,也可以从档案文件中释放文件。tar 命令有多种选项,每种选项都有其特定的功能。 首先,tar 命令的...

    Linux常用命令详解

    【Linux常用命令详解】 在Linux操作系统中,命令行界面提供了丰富的命令来管理文件、系统、网络等。这里我们将深入探讨一些常用的Linux命令。 1. **文件传输** - **bye**:这个命令用于中断FTP(文件传输协议)...

    linux 常用命令详解

    ### Linux常用命令详解 在Linux操作系统中,命令行界面(CLI)是进行系统管理、文件操作及各种任务执行的核心工具。下面将详细解析几个常用的Linux命令,帮助理解它们的功能及用法。 #### su - 用户切换命令 `su`...

    tar命令详细介绍很经典的资料

    ### tar命令详解 #### 一、简介 `tar` 命令是 Linux 和 Unix 系统中一个非常重要的工具,用于打包文件和目录。它最初由“tape archive”缩写而来,意指磁带存档,但现在广泛应用于各种文件系统。`tar` 命令可以帮助...

    Linux tar 命令用法实例详解

    Linux中的`tar`命令是一个非常重要的工具,它用于创建、管理和提取档案文件。这些档案文件可以包含一个或多个文件和目录,便于数据备份、存储和传输。`tar`这个名字来源于"tape archive",最初是为了在磁带上存储...

    Linux下tar命令大全.pdf

    ### 二、tar命令常用选项详解 1. **-c 创建归档文件** ``` tar -cvf 归档文件名 目录或文件 ``` `-c` 表示创建一个新的归档文件,`-v` 显示详细过程,`-f` 后跟归档文件名。 2. **-x 解压归档文件** ``` tar...

    linux编程命令详解

    在Linux操作系统中,编程是一项基础且...阅读《Linux编程命令详解》这样的资料,将有助于深入理解这些命令的用法和应用场景。同时,实践是检验知识的最好方式,多在终端中尝试这些命令,将有助于巩固记忆并提升技能。

Global site tag (gtag.js) - Google Analytics