Linux命令之压缩zip
  TEZNKK3IfmPf 2023年11月13日 40 0

概述

zip 命令的功能是用于压缩文件,解压命令为 unzip。压缩后不覆盖源文件,可以压缩目录。

Linux命令之压缩zip

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

语法

该命令的语法如下:

zip [选项] [参数] [文件]

该命令支持的选项有:

选项 说明
-q 不显示指令执行过程
-r 递归处理,将指定目录下的所有文件和子目录一起处理
-z 给压缩文件加上注释
-v 显示指令的执行过程
-d 删除压缩包内的文件
-n <后缀> 不压缩具有特定后缀的文件
-e 加密压缩文件
-u 更新或追加文件到压缩包内
-f 更新现有的文件
-m 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中
-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同

参数通常是指压缩文件名。

使用

压缩目录和文件【★★★★★】

要压缩当前目录的指定文件和目录,命令格式如下:

# 语法
zip -r 压缩包名 待压缩的文件和目录列表
# 示例,将文件 log.txt、test.txt 和目录 test/ 压缩到 test.zip 文件中
zip -r test.zip log.txt test/ test.txt

Linux命令之压缩zip

注:如果要压缩当前目录下的所有文件,可以用通配符 *,即命令是 zip -r 压缩包名 *。也可以用 *.txt 表示压缩指定 .txt 后缀的所有文件。

从压缩包中删除指定文件

可以通过 -d 选项删除压缩包中的指定文件:

# 语法
zip -d 压缩包名 指定待删除文件
# 示例,从压缩包 test.zip 中删除 log.txt 文件
zip -d test.zip log.txt

Linux命令之压缩zip

更新压缩包中的文件

如果某个文件发生了变化,我们想要将其更新到压缩包中,可以使用 -f 选项。语法如下:

# 语法
zip -f 压缩包名 待更新的文件
zip -u 压缩包名 待更新或追加的文件
# 示例,更新压缩包 test.zip 中的 test.txt 文件
zip -f test.zip test.txt

Linux命令之压缩zip

注:zip -fzip -u 的更新是区别的,前者只能更新已有的文件,如果压缩包中不存在这个文件则不会进行更新,也不会追加;而后者如果压缩包中存在这个文件则会进行更新,如果不存在则会进行追加到压缩包内。

Linux命令之压缩zip

加密压缩

可以使用 -u 选项对压缩包进行加密:

# 语法
zip -e 压缩包名 待压缩文件或目录
# 示例
zip -e mypasswd.zip /etc/passwd

Linux命令之压缩zip

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2024年05月31日   51   0   0 linux服务器
  TEZNKK3IfmPf   2024年05月31日   30   0   0 linux服务器centos
  TEZNKK3IfmPf   2024年05月31日   29   0   0 linuxbind
  TEZNKK3IfmPf   2024年05月31日   39   0   0 linuxshell
TEZNKK3IfmPf