侧边栏壁纸
  • 累计撰写 72 篇文章
  • 累计创建 22 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

【Linux命令】zip、unzip、gunzip

Administrator
2025-06-28 / 0 评论 / 0 点赞 / 8 阅读 / 6186 字 / 正在检测是否收录...

Zip 是一个创建和管理 zip 文件的压缩工具

Unzip 是一个用于解压缩 zip 文件的工具

gunzip 通常用来解压那些基于gzip格式压缩过的文件(也就是那些.gz结尾的压缩包)。

一、语法形式和选项

二、示例

1. zip

创建新的 zip 压缩文件(当前路径)

$ zip filename.zip file1 file2 folder1

创建新的 zip 压缩文件(指定路径)

# 使用-r(递归)选项来处理文件夹:
zip -r /目标路径/压缩包名.zip /源文件夹路径/

默认会保留完整路径,若只需相对路径,可先cd到源目录:

将文件(文件夹)添加到现有的 zip 压缩文件

zip -u /路径/压缩包名.zip /路径/待添加文件.txt
zip -ur /路径/压缩包名.zip /路径/待添加文件夹/

-u 选项:往已有的 zip 文件里追加新文件,要是文件已存在于压缩包中,会更新为新内容。

-r 选项:递归处理文件夹,能把文件夹及其子目录下的所有内容都添加进去。

添加到现有的zip文件时排除特定文件

zip -ur /路径/压缩包名.zip /路径/待添加文件夹/ -x "*.log" "*/临时文件/*"

-x 选项:排除指定模式的文件,支持使用通配符。

2. unzip

解压到当前目录

unzip 文件.zip

将zip文件解压缩到指定目录

unzip 文件.zip -d /目标路径/

常用选项

参数

作用

-d 目录

指定解压目标目录(自动创建不存在的目录)。

-o

覆盖已有文件,无需确认。

-n

不覆盖已有文件。

-q

安静模式,不显示解压进度。

-v

查看压缩包内容列表(不解压)。

-j

不保留原文件路径,所有文件解压到同一目录。

-x 文件

排除特定文件(支持通配符,如 *.log)。

-O 编码

指定编码(如 GBKUTF-8),解决中文乱码问题(需系统支持)。

解压特定文件

unzip 文件.zip "docs/*.txt" -d /目标路径/  # 只解压 docs 目录下的 txt 文件

排除某些文件

unzip 文件.zip -d /目标路径/ -x "*.tmp" "*/备份/*"  # 排除临时文件和备份目录

解决中文乱码

unzip -O GBK 中文文件名.zip  # 针对 GBK 编码的压缩包
unzip -O UTF-8 中文文件名.zip  # 针对 UTF-8 编码的压缩包

3. gunzip

解压指定的压缩包文件:

gunzip File.gz

解压指定的压缩包文件,并输出解压过程

gunzip -v File.gz

测试指定的压缩包文件内容是否损坏,是否能够正常解压:

gunzip -t File.gz

0
博主关闭了所有页面的评论