linux解压缩命令zip、unzip

介绍

linux、unix、mac解压缩zip压缩包命令

压缩命令:zip
解压缩命令:unzip

测试是否安装

如果执行 zip 命令,提示下面信息:

The program 'zip' is currently not installed. You can install it by typing:
apt install zip

如果执行unzip,提示下面信息:

The program 'unzip' is currently not installed. You can install it by typing: apt install unzip

表示未安装

安装

centos

yum install -y zip unzip

Ubuntu

安装zip
sudo apt install zip

或者

sudo apt-get install unzip
安装unzip
sudo apt install unzip

或者

sudo apt-get install unzip

常用命令

压缩

  1. 压缩abc.txt文件,压缩包名字是a.zip

    zip a.zip abc.txt
    
  2. 压缩abc文件夹,压缩包名字是a.zip。-r递归处理文件夹

    zip -r abc.zip abc
    

解压缩

  1. 将 a.zip 解压缩到当前目录

    unzip a.zip
    
  2. 将 a.zip 解压缩到指定目录

    unzip a.zip -d /root/a
    

zip使用命令

功能说明:压缩文件。

语 法:

zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]

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

参数:

-A 调整可执行的自动解压缩文件。

-b<工作目录> 指定暂时存放文件的目录。

-c 替每个被压缩的文件加上注释。

-d 从压缩文件内删除指定的文件。

-D 压缩文件内不建立目录名称。

-f 此参数的效果和指定”-u”参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。

-F 尝试修复已损坏的压缩文件。

-g 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。

-h 在线帮助。

-i<范本样式> 只压缩符合条件的文件。

-j 只保存文件名称及其内容,而不存放任何目录名称。

-J 删除压缩文件前面不必要的数据。

-k 使用MS-DOS兼容格式的文件名称。

-l 压缩文件时,把LF字符置换成LF+CR字符。

-ll 压缩文件时,把LF+CR字符置换成LF字符。

-L 显示版权信息。

-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。

-n<字尾字符串> 不压缩具有特定字尾字符串的文件。

-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。

-q 不显示指令执行过程。

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

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

-t<日期时间> 把压缩文件的日期设成指定的日期。

-T 检查备份文件内的每个文件是否正确无误。

-u 更换较新的文件到压缩文件内。

-v 显示指令执行过程或显示版本信息。

-V 保存VMS操作系统的文件属性。

-w 在文件名称里假如版本编号,本参数仅在VMS操作系统下有效。

-x<范本样式> 压缩时排除符合条件的文件。

-X 不保存额外的文件属性。

-y 直接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之类的系统下有效。

-z 替压缩文件加上注释。

-$ 保存第一个被压缩文件所在磁盘的卷册名称。

-<压缩效率> 压缩效率是一个介于1-9的数值。

例子

压缩abc.txt,压缩包名字是a.zip

zip a.zip abc.txt

压缩abc文件夹,压缩包名字是 abc.zip。-r递归处理文件夹

zip -r abc.zip abc

unzip命令

功能说明:解压缩zip文件

语 法:

unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]

补充说明:unzip为.zip压缩文件的解压缩程序。

参数:

-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。

-f 更新现有的文件。

-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压缩文件。

[文件] 指定要处理.zip压缩文件中的哪些文件。

-d<目录> 指定文件解压缩后所要存储的目录。

-x<文件> 指定不要处理.zip压缩文件中的哪些文件。

-Z unzip -Z等于执行zipinfo指令

例子

解压缩yasuo.zip文件

unzip yasuo.zip

当前目录下有abc1.zip,abc2.zip和abc3.zip,一起解压缩它们:

unzip abc\?.zip

注释:?表示一个字符,如果用*表示任意多个字符。

查看a.zip压缩包里的文件:

unzip -v large.zip

验证压缩文件a.zip是否完整

# unzip -t large.zip

a.zip压缩文件里面有很多目录和子目录,把这些文件都下载到一个目录中,而不是一层一层建目录:

unzip -j a.zip

感谢:
https://www.cnblogs.com/chinareny2k/archive/2010/01/05/1639468.html


原文出处:/show_1EF4vWYwVVGT.html