。复制代码root@ubuntu:~# tar --help用法: tar [选项...] [FILE]...GNU 'tar' saves many files together into a single tape or disk archive, and canrestore 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.主操作模式:-A, --catenate, --concatenate追加 tar 文件至归档-c, --create创建一个新归档-d, --diff, --compare找出归档和文件系统的差异--delete从归档(非磁带!)中删除-r, --append追加文件至归档结尾-t, --list列出归档内容--test-label测试归档卷标并退出-u, --update仅追加比归档中副本更新的文件-x, --extract, --get从归档中解出文件操作修饰符:--check-device当创建增量归档时检查设备号(默认)-g, --listed-incremental=FILE处理新式的 GNU 格式的增量备份-G, --incremental处理老式的 GNU 格式的增量备份--ignore-failed-read当遇上不可读文件时不要以非零值退出--level=NUMBER所创建的增量列表归档的输出级别-n, --seek归档可检索--no-check-device当创建增量归档时不要检查设备号--no-seek归档不可检索--occurrence[=NUMBER]仅处理归档中每个文件的第 NUMBER个事件;仅当与以下子命令 --delete,--diff, --extract 或是 --list中的一个联合使用时,此选项才有效 。而且不管文件列表是以命令行形式给出或是通过-T 选项指定的;NUMBER 值默认为 1--sparse-version=MAJOR[.MINOR]设置所用的离散格式版本(隐含--sparse)-S, --sparse高效处理离散文件重写控制:-k, --keep-old-filesdon't replace existing files when extracting,treat them as errors--keep-directory-symlinkpreserve existing symlinks to directories whenextracting--keep-newer-files不要替换比归档中副本更新的已存在的文件--no-overwrite-dir保留已存在目录的元数据--one-top-level[=DIR]create a subdirectory to avoid having loose filesextracted--overwrite解压时重写存在的文件--overwrite-dir解压时重写已存在目录的元数据(默认)--recursive-unlink解压目录之前先清除目录层次--remove-files在添加文件至归档后删除它们--skip-old-filesdon't replace existing files when extracting,silently skip over them-U, --unlink-first在解压要重写的文件之前先删除它们-W, --verify在写入以后尝试校验归档选择输出流:--ignore-command-error 忽略子进程的退出代码--no-ignore-command-error将子进程的非零退出代码认为发生错误-O, --to-stdout解压文件至标准输出--to-command=COMMAND将解压的文件通过管道传送至另一个程序操作文件属性:--atime-preserve[=METHOD]在输出的文件上保留访问时间,要么通过在读取(默认METHOD=‘replace’)后还原时间,要不就不要在第一次(METHOD=‘system’)设置时间--clamp-mtimeonly set time when the file is more recent thanwhat was given with --mtime--delay-directory-restore直到解压结束才设置修改时间和所解目录的权限--group=名称强制将 NAME作为所添加的文件的组所有者--mode=CHANGES强制将所添加的文件(符号)更改为权限CHANGES--mtime=DATE-OR-FILE从 DATE-OR-FILE 中为添加的文件设置mtime-m, --touch不要解压文件的修改时间--no-delay-directory-restore取消 --delay-directory-restore 选项的效果--no-same-owner将文件解压为您所有(普通用户默认此项)--no-same-permissions从归档中解压权限时使用用户的掩码位(默认为普通用户服务)--numeric-owner总是以数字代表用户/组的名称--owner=名称强制将 NAME作为所添加的文件的所有者-p, --preserve-permissions, --same-permissions解压文件权限信息(默认只为超级用户服务)--preserve与 -p 和 -s 一样--same-owner尝试解压时保持所有者关系一致(超级用户默认此项)-s, --preserve-order, --same-ordermember arguments are listed in the same order asthe files in the archive--sort=ORDERdirectory sorting order: none (default), name orinodeHandling of extended file attributes:--aclsEnable the POSIX ACLs support--no-aclsDisable the POSIX ACLs support--no-selinuxDisable the SELinux context support--no-xattrsDisable extended attributes support--selinuxEnable the SELinux context support--xattrsEnable extended attributes support--xattrs-exclude=MASKspecify the exclude pattern for xattr keys--xattrs-include=MASKspecify the include pattern for xattr keys设备选择和切换:-f, --file=ARCHIVE使用归档文件或 ARCHIVE 设备--force-local即使归档文件存在副本还是把它认为是本地归档-F, --info-script=名称, --new-volume-script=名称在每卷磁带最后运行脚本(隐含 -M)-L, --tape-length=NUMBER写入 NUMBER ?1024 字节后更换磁带-M, --multi-volume创建/列出/解压多卷归档文件--rmt-command=COMMAND使用指定的 rmt COMMAND 代替 rmt--rsh-command=COMMAND使用远程 COMMAND 代替 rsh--volno-file=FILE使用/更新 FILE 中的卷数设备分块:-b, --blocking-factor=BLOCKS每个记录 BLOCKS x 512 字节-B, --read-full-records读取时重新分块(只对 4.2BSD 管道有效)-i, --ignore-zeros忽略归档中的零字节块(即文件结尾)--record-size=NUMBER每个记录的字节数 NUMBER,乘以 512选择归档格式:-H, --format=FORMAT创建指定格式的归档FORMAT 是以下格式中的一种:gnuGNU tar 1.13.x 格式oldgnuGNU 格式 as per tar
推荐阅读