tar,zip/unzip详解

作者: 快乐程序员 | 来源:发表于2019-05-13 00:11 被阅读5次

tar:是用来建立,还原备份文件的工具程序,它可以加入,解开备份文件内的文件。

语法:

tar  [选项...]  [FILE]...

参数:

主操作模式:

  -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 格式的增量备份

 压缩选项:

 -a, --auto-compress        使用归档后缀名来决定压缩程序

  -I, --use-compress-program=PROG

                             通过 PROG 过滤(必须是能接受-d

                             选项的程序)

  -j, --bzip2                通过 bzip2 过滤归档

  -J, --xz                   通过 xz 过滤归档

      --lzip                 通过 lzip 过滤归档

      --lzma                 通过 lzma 过滤归档

      --lzop

      --no-auto-compress     不使用归档后缀名来决定压缩程序

  -z, --gzip, --gunzip,--ungzip   通过 gzip 过滤归档

  -Z, --compress, --uncompress   通过 compress 过滤归档

 本地文件选择:

   add-file=FILE        添加指定的 FILE 至归档(如果名字以-开始会很有用的)

      --backup[=CONTROL]     在删除前备份,选择 CONTROL 版本

  -C, --directory=DIR        改变至目录DIR

      --exclude=PATTERN      排除以 PATTERN 指定的文件

      --exclude-backups      排除备份和锁文件

      --exclude-caches       除标识文件本身外,排除包含

                            CACHEDIR.TAG的目录中的内容

      --exclude-caches-all   排除包含 CACHEDIR.TAG 的目录

      --exclude-caches-under排除包含 CACHEDIR.TAG 的目录中所有内容

      --exclude-tag=FILE     除 FILE 自身外,排除包含FILE的目录中的内容

      --exclude-tag-all=FILE排除包含 FILE 的目录

      --exclude-tag-under=FILE   排除包含 FILE 的目录中的所有内容

      --exclude-vcs          排除版本控制系统目录

使用实例:

实例1:打包dir4到dir4.tar,并列出dir4.tar的内容

命令:

tar –cvf dir4.tar ./dir4

tar –tvf ./dir4.tar

输出:

说明:选项"-cvf"一般是习惯用法,记住打包时需要指定打包之后的文件名,而且要用".tar"作为扩展名。

实例2:切换到dir3目录打包dir3/dir3_1到dir3_1.tar

命令:

tar –cvf dir3_1_C.tar –C ./dir3 dir3_1

输出:

说明:对比tar –cvf dir3_1.tar ./dir3/dir3_1结果tar包少了一层dir3

实例3:解压dir3_1.tar

命令:

tar –xvf dir3_1.tar

输出:

实例4:解压dir3_1.tar到test目录

命令:

tar –xvf dir3_1.tar –C ./test

输出:

实例5:打包dir4并压缩成.gz格式到dir4.tar.gz,并列出dir4.tar.gz的内容

命令:

tar –zcvf dir4.tar.gz ./dir4

tar –ztvf ./dir4.tar.gz

输出:

说明:选项"-zcvf"一般是习惯用法,记住打包时需要指定打包之后的文件名,而且要用".tar.gz"作为扩展名。-z通过 gzip过滤归档

zip:是个使用广泛的压缩程序,文件经它压缩后会另外产生具有".zip"扩展名的压缩文件

语法:

zip [选项]  压缩包名   源文件或源目录

参数:

-r 递归处理,将指定目录下的所有文件和子目录一并处理。

-S 包含系统和隐藏文件。

-t<日期时间> 把压缩文件的日期设成指定的日期。-q 不显示指令执行过程。

实例:

实例6 :将dir4压缩成dir4.zip

命令: zip –r dir4.zip dir4

输出:

unzip: 用于解压缩zip文件

语法:

unzip [选项] 压缩包名

参数:

-d<目录> 指定文件解压缩后所要存储的目录-n 解压缩时不要覆盖原有的文件-l 显示压缩文件内所包含的文件

实例:

实例7:显示压缩文件dir4.zip

命令: unzip –l dir4.zip

输出:

实例8 :显示压缩文件dir4.zip到test

命令: unzip –d test dir4.zip

输出:

观注快乐程序员公众号,每日分享一点小知识。爱编程,爱生活!

相关文章

网友评论

    本文标题:tar,zip/unzip详解

    本文链接:https://www.haomeiwen.com/subject/zckkaqtx.html