首页 > 编程笔记 > Linux命令 阅读:13

Linux zip命令:压缩文件

在 Linux 中,zip 命令的功能是压缩文件,解压命令为 unzip。

借助 zip 命令,可以将文件打包成 zip 格式的压缩包,里面包含文件的名称、路径、创建时间、上次修改时间等信息(与 tar 命令相‍似)。

zip 命令的语法格式如下:
zip 参数 目标文件名.zip 源文件或目录名
常用参数见下表:

参 数 功 能 参 数 功 能
-A 自动解压缩文件 -n 不压缩具有特定字符串的文件
-b 设置暂存文件的目录 -q 静默执行模式
-c 添加注释信息到压缩文件 -r 递归处理所有子文件
-d 更新压缩包内文件 -S 包含系统和隐藏文件
-F 尝试修复损坏的压缩文件 -t 设置压缩时间为指定日期
-h 显示帮助信息 -T 检查压缩文件是否正确无误
-i 仅压缩符合条件的文件 -v 显示执行过程详细信息
-k 使用MS-DOS兼容格式 -V 保留VMS操作系统的文件属性
-l 将“LF”替换成“LF+CR”字符 -w 在文件名称中加入版本编号
-L 显示版本信息 -X 不保留过多的文件属性信息
-m 压缩后删除源文件 -y 直接保存符号链接,而不是对应文件

【实例 1】将指定目录及其包含的全部文件都打包成zip格式的压缩包文件。
[root@linux ~]# zip -r File.zip /etc
  adding: etc/fstab (deflated 45%)
  adding: etc/crypttab (stored 0%)
  adding: etc/resolv.conf (stored 0%)
  adding: etc/dnf/ (stored 0%)
  adding: etc/dnf/modules.d/ (stored 0%)
  adding: etc/dnf/modules.d/container-tools.module (deflated 17%)
  adding: etc/dnf/modules.d/llvm-toolset.module (deflated 14%)
………………省略部分输出信息………………

【实例 2】将当前工作目录内所有以.cfg为后缀的文件打包:
[root@linux ~]# zip -r File.zip *.cfg
  adding: anaconda-ks.cfg (deflated 44%)
  adding: initial-setup-ks.cfg (deflated 44%)

【实例 3】更新压缩包文件中的某个文件:
[root@linux ~]# zip -dv File.zip File.cfg
1>1: updating: File.cfg (deflated 44%)

相关文章