首页 >> 学习 >> Linux常用命令 >> zip、unzip
zip/unzip命令

本节重要性:★★★☆☆    本节难度:★★★★☆

zip格式在Linux下用的较少,但该格式在各种操作系统下兼容性好,Windows自带的压缩工具就可以解压。因此,在不同的操作系统间交换数据时经常使用zip格式的压缩文件。

命令用途

压缩/解压缩文件

命令格式

zip [option] file.zip file

unzip [option] file.zip

常用选项

zip
-c	替每个被压缩的文件加上注释。
-d	从压缩文件内删除指定的文件。
-F	尝试修复已损坏的压缩文件。
-g	将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
-h	在线帮助。
-i<范本样式>	只压缩符合条件的文件。
-m	将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-o	以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
-q	不显示指令执行过程。
-r	递归处理,将指定目录下的所有文件和子目录一并处理。
-S	包含系统和隐藏文件。
-t<日期时间>	把压缩文件的日期设成指定的日期。
-T	检查备份文件内的每个文件是否正确无误。
-u	更换较新的文件到压缩文件内。
-v	显示指令执行过程或显示版本信息。
-x<范本样式>	压缩时排除符合条件的文件。
-X	不保存额外的文件属性。
-y	直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。

unzip
-c	将解压缩结果显示到标准输出
-l	显示压缩文件内所包含的文件
-p	与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何转换
-t	测试模式,检查压缩文件是否正确
-u	与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v	执行是时显示详细的信息
-z	仅显示压缩文件的备注文字
-a	对文本文件进行必要的字符转换
-b	不要对文本文件进行字符转换
-C	压缩文件中的文件名称区分大小写
-j	不处理压缩文件中原有的目录路径
-L	将压缩文件中的全部文件名改为小写
-M	将输出结果送到more程序处理
-n	解压缩时不要覆盖原有的文件
-o	不必先询问用户,unzip执行后覆盖原有文件
-P	使用zip的密码选项
-q	执行时不显示任何信息
-s	将文件名中的空白字符转换为底线字符
-V	保留VMS的文件版本信息
-X	解压缩时同时回存文件原来的UID/GID

常见用法

zip压缩时,需要提供两个参数,第一个是压缩后的文件名(后缀是.zip),第二个是原文件名:

[peter@ibi98 zip]$ ll
总用量 8
-rw-rw-r-- 1 peter peter 6453  3月 28 15:39 at_hap3_cds.fa
[peter@ibi98 zip]$ zip at_hap3_cds.fa.zip at_hap3_cds.fa
  adding: at_hap3_cds.fa (deflated 68%)
[peter@ibi98 zip]$ ll
总用量 12
-rw-rw-r-- 1 peter peter 6453  3月 28 15:39 at_hap3_cds.fa
-rw-rw-r-- 1 peter peter 2257  3月 28 15:41 at_hap3_cds.fa.zip

压缩完成后,多了一个压缩文件,原文件还在。

用unzip解压缩只需提供需要解压的压缩文件名:

[peter@ibi98 zip]$ ll
总用量 4
-rw-rw-r-- 1 peter peter 2257  3月 28 15:41 at_hap3_cds.fa.zip
[peter@ibi98 zip]$ unzip at_hap3_cds.fa.zip
Archive:  at_hap3_cds.fa.zip
  inflating: at_hap3_cds.fa
[peter@ibi98 zip]$ ll
总用量 12
-rw-rw-r-- 1 peter peter 6453  3月 28 15:39 at_hap3_cds.fa
-rw-rw-r-- 1 peter peter 2257  3月 28 15:41 at_hap3_cds.fa.zip

使用-r选项,可以压缩整个目录:

[peter@ibi98 zip]$ ll
总用量 4
drwxrwxr-x 2 peter peter 4096  3月 28 16:26 demo
[peter@ibi98 zip]$ zip -r demo.zip demo/
  adding: demo/ (stored 0%)
  adding: demo/demo_wc_Chinese (deflated 29%)
  adding: demo/demo_wc (deflated 29%)
[peter@ibi98 zip]$ ll
总用量 8
drwxrwxr-x 2 peter peter 4096  3月 28 16:26 demo
-rw-rw-r-- 1 peter peter  711  3月 28 16:27 demo.zip

<<上一节  下一节>>