2018-08-09 13:44:59 463浏览
话不多说,今天小编给参加Linux培训的同学一些干货!
用法:tar[选项...][FILE]...
将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。
示例:
tar-cfarchive.tarfoobar#从文件foo和bar创建归档文件archive.tar。
tar-tvfarchive.tar#详细列举归档文件archive.tar中的所有文件。
tar-xfarchive.tar#解压.tar文件
tar-zxvfarchive.tar.gz#解压.tar.gz文件
tar-zxvfarchive.tar.bz2#解压.tar.bz2文件
tar-Zxvfarchive.tar.bz2#解压.tar.Z文件
本地文件名选择:--add-file=FILE添加指定的FILE至归档(如果名字以-开始会很有用的)
-C,--directory=DIR改变至目录DIR
--exclude=PATTERN排除以PATTERN指定的文件
--exclude-backups排除备份和锁文件
--exclude-caches除标识文件本身外,排除包含CACHEDIR.TAG的目录中的内容
--exclude-caches-all排除包含CACHEDIR.TAG的目录
--exclude-caches-under排除包含CACHEDIR.TAG的目录中所有内容
--exclude-ignore=FILE若存在FILE,则从其中读取每个目录的例外匹配项
--exclude-ignore-recursive=FILE若存在FILE,则从其中为每个目录及其子目录读取需要排除的例外匹配项
--exclude-tag=FILE除FILE自身外,排除包含FILE的目录中的内容
--exclude-tag-all=FILE排除包含FILE的目录
--exclude-tag-under=FILE排除包含FILE的目录中的所有内容
--exclude-vcs排除版本控制系统目录
--exclude-vcs-ignores从VCS忽略文件中读取排除匹配项
--no-null禁用上一次的效果--null选项
--no-recursion避免目录中的自动降级
--no-unquote不要unquote输入文件或成员名称
--no-verbatim-files-from-T把以‘-’开始的文件作为选项(默认)
--null-T读取以空终止的名字;隐含--verbatim-files-from
--recursion目录递归(默认)
-T,--files-from=FILE从FILE中获取文件名来解压或创建文件
--unquoteunquote输入文件或成员名称(默认)
--verbatim-files-from-T逐字读取文件名(不处理选项)
-X,--exclude-from=FILE排除FILE中列出的模式串文件名匹配选项(同时影响排除和包括模式串):
--anchored模式串匹配文件名头部
--ignore-case忽略大小写
--no-anchored模式串匹配任意‘/’后字符(默认对exclusion有效)
--no-ignore-case匹配大小写(默认)
--no-wildcards逐字匹配字符串
--no-wildcards-match-slash通配符不匹配‘/’
--wildcards使用通配符(默认对exclusion)
--wildcards-match-slash通配符匹配‘/’(默认对exclusion有效)
主操作模式:
-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格式的增量备份
--hole-detection=TYPE用于探测holes的技术
--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-files解压时不替换存在的文件,而将其认为是错误
--keep-directory-symlink解压时保留已存在的目录符号链接
--keep-newer-files不要替换比归档中副本更新的已存在的文件
--no-overwrite-dir保留已存在目录的元数据
--one-top-level[=DIR]创建子目录以避免解压松散文件
--overwrite解压时重写存在的文件
--overwrite-dir解压时重写已存在目录的元数据(默认)
--recursive-unlink解压目录之前先清除目录层次
--remove-files在添加文件至归档后删除它们
--skip-old-files解压时不替换存在的文件,而是自动忽略
-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-mtimeonlysettimewhenthefileismorerecentthanwhatwasgivenwith--mtime
--delay-directory-restore直到解压结束才设置修改时间和所解目录的权限
--group=名称强制将NAME作为所添加的文件的组所有者
--group-map=FILE用FILE映射文件所有者GIDs和名字
--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作为所添加的文件的所有者
--owner-map=FILE用FILE映射文件所有者UIDs和名字
-p,--preserve-permissions,--same-permissions解压文件权限信息(默认只为超级用户服务)
--same-owner尝试解压时保持所有者关系一致(超级用户默认此项)
-s,--preserve-order,--same-order成员参数按归档中的文件顺序列出
--sort=ORDER目录排序顺序:none(默认),name或inode
操作extended文件属性:
--acls开启POSIXACLs支持
--no-acls关闭POSIXACLs支持
--no-selinux关闭SELinux上下文支持
--no-xattrs关闭extended属性支持
--selinux开启SELinux上下文支持
--xattrs开启extended属性支持
--xattrs-exclude=MASK为xattr关键字指定排除匹配项
--xattrs-include=MASK为xattr关键字指定包含匹配项
设备选择和切换:
-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使用指定的rmtCOMMAND代替rmt
--rsh-command=COMMAND使用远程COMMAND代替rsh
--volno-file=FILE使用/更新FILE中的卷数
设备分块:
-b,--blocking-factor=BLOCKS每个记录BLOCKSx512字节
-B,--read-full-records读取时重新分块(只对4.2BSD管道有效)
-i,--ignore-zeros忽略归档中的零字节块(即文件结尾)
--record-size=NUMBER每个记录的字节数NUMBER,乘以512
选择归档格式:
-H,--format=FORMAT创建指定格式的归档
FORMAT是以下格式中的一种:
gnuGNUtar1.13.x格式
oldgnuGNU格式aspertar<=1.12
paxPOSIX1003.1-2001(pax)格式
posix等同于pax
ustarPOSIX1003.1-1988(ustar)格式
v7oldV7tar格式
--old-archive,--portability等同于--format=v7
--pax-option=关键字[[:]=值][,关键字[[:]=值]]...控制pax关键字
--posix等同于--format=posix
-V,--label=TEXT创建带有卷名TEXT的归档;在列出/解压时,使用TEXT作为卷名的模式串
压缩选项:
-a,--auto-compress使用归档后缀名来决定压缩程序
-I,--use-compress-program=PROG
通过PROG过滤(必须是能接受-d选项的程序)
-j,--bzip2通过bzip2过滤归档
-J,--xz通过xz过滤归档
--lzip通过lzip过滤归档
--lzma通过xz过滤归档
--lzop通过xz过滤归档
--no-auto-compress不使用归档后缀名来决定压缩程序
-z,--gzip,--gunzip,--ungzip通过gzip过滤归档
-Z,--compress,--uncompress通过compress过滤归档
本地文件选择:
--backup[=CONTROL]在删除前备份,选择CONTROL版本
-h,--dereference跟踪符号链接;将它们所指向的文件归档并输出
--hard-dereference跟踪硬链接;将它们所指向的文件归档并输出
-K,--starting-file=MEMBER-NAME从归档中的MEMBER-NAME成员处开始读取归档
--newer-mtime=DATE当只有数据改变时比较数据和时间
-N,--newer=DATE-OR-FILE,--after-date=DATE-OR-FILE只保存比DATE-OR-FILE更新的文件
--one-file-system创建归档时保存在本地文件系统中
-P,--absolute-names不要从文件名中清除引导符‘/’
--suffix=STRING在删除前备份,除非被环境变量
SIMPLE_BACKUP_SUFFIX覆盖,否则覆盖常用后缀(‘’)
文件名变换:
--strip-components=NUMBER解压时从文件名中清除NUMBER个引导部分
--transform=EXPRESSION,--xform=EXPRESSION使用sed代替EXPRESSION来进行文件名变换
提示性输出:
--checkpoint[=NUMBER]每隔NUMBER个记录显示进度信息(默认为10个)
--checkpoint-action=ACTION在每个检查点上执行ACTION
--full-time按文件原本时间格式打印
--index-file=FILE将详细输出发送至FILE
-l,--check-links只要不是所有链接都被输出就打印信息
--no-quote-chars=STRING禁用来自STRING的字符引用
--quote-chars=STRING来自STRING的额外的引用字符
--quoting-style=STYLE设置名称引用风格;有效的STYLE值请参阅以下说明
-R,--block-number每个信息都显示归档内的块数
--show-defaults显示tar默认选项
--show-omitted-dirs列表或解压时,列出每个不匹配查找标准的目录
--show-snapshot-field-ranges显示快照文件区的有效范围
--show-transformed-names,--show-stored-names显示变换后的文件名或归档名
--totals[=SIGNAL]处理归档后打印出总字节数;当此SIGNAL被触发时带参数-打印总字节数;允许的信号为:SIGHUP,SIGQUIT,SIGINT,SIGUSR1和SIGUSR2;同时也接受不带SIG前缀的信号名称
--utc以UTC格式打印文件修改时间
-v,--verbose详细地列出处理的文件
--warning=KEYWORD警告控制:
-w,--interactive,--confirmation每次操作都要求确认
兼容性选项:
-o创建归档时,相当于--old-archive;展开归档时,相当于--no-same-owner
其它选项:
-?,--help显示此帮助列表
--restrict禁用某些潜在的有危险的选项
--usage显示简短的用法说明
--version打印程序版本
长选项和相应短选项具有相同的强制参数或可选参数。
除非以--suffix或SIMPLE_BACKUP_SUFFIX
设置备份后缀,否则备份后缀就是“~”。
可以用--backup或VERSION_CONTROL设置版本控制,可能的值为:
none,off从不做备份
t,numbered进行编号备份
nil,existing
如果编号备份存在则进行编号备份,否则进行简单备份
never,simple总是使用简单备份
--quoting-style选项的有效参数为:
literal
shell
shell-always
c
c-maybe
escape
locale
clocale
以上就是扣丁学堂Linux培训小编给大家分享的文章,希望对小伙伴们有所帮助,想要了解更多关于Linux开发方面内容的小伙伴可以登录扣丁学堂官网咨询。扣丁学堂不仅有专业的Linux培训班供大家学习,还有与时俱进的课程体系和大量的Linux在线视频教程让学员免费观看学习,想要快速学习Linux开发就到由专业老师授课的扣丁学堂学习吧。扣丁学堂Linux技术交流群:422345477。
【关注微信公众号获取更多的学习资料】