zip命令的功能是用于压缩文件,解压命令为unzip。通过zip命令可以将文件打包成.zip格式的压缩包,里面会附含文件的名称、路径、创建时间、上次修改时间等等信息,与tar命令相似。
语法格式: zip 参数 文件
常用参数:
-q | 不显示指令执行过程 |
---|---|
-r | 递归处理,将指定目录下的所有文件和子目录一并处理 |
-z | 替压缩文件加上注释 |
-v | 显示指令执行过程或显示版本信息 |
-d | 更新压缩包内文件 |
-n<字尾字符串> | 不压缩具有特定字尾字符串的文件 |
参考实例
将指定目录及其内全部文件都打包成zip格式压缩包文件:
[root@linuxcool ~]# zip -r backup1.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%) ………………省略部分输出信息………………
将当前工作目录内所有以.cfg为后缀的文件打包:
[root@linuxcool ~]# zip -r backup2.zip *.cfg adding: anaconda-ks.cfg (deflated 44%) adding: initial-setup-ks.cfg (deflated 44%)
更新压缩包文件中某个文件:
[root@linuxcool ~]# zip -dv backup2.zip anaconda-ks.cfg 1>1: updating: anaconda-ks.cfg (deflated 44%)