zip 命令

分类:常用对照表
zip 命令用于压缩文件,它提供了若干选项来完成压缩工作。zip 是 Linux 系统下一个广泛使用的压缩程序,通过该命令压缩的文件将生成具有 .zip 扩展名的压缩文件。

zip 命令说明及用法

返回常用 Linux 命令

说明

zip 命令用于压缩文件,它提供了若干选项来完成压缩工作。zip 是 Linux 系统下一个广泛使用的压缩程序,通过该命令压缩的文件将生成具有 .zip 扩展名的压缩文件。

语法

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 的数值

参数

  • zip 压缩包:指定要创建的 zip 压缩包
  • 文件列表:指定要压缩的文件列表

实例

/home/webroot/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip,命令如下:

zip -q -r html.zip /home/webroot/html

上面的命令是将绝对地址的文件及文件夹进行压缩。

以下给出压缩相对路径目录。比如,目前在 webroot 这个目录下,执行以下操作可以达到以上同样的效果:

zip -q -r html.zip html

比如,在 html 目录下,使用的 zip 压缩命令是:

zip -q -r html.zip *

常见问题

在 CentOS 7 中命令找不到,报如下错:

-Bash: zip: Command Not Found

原因:系统没有安装 zip 压缩程序。

解决方法:通过 yum install 命令安装 zip 程序:

yum install -y unzip zip