0

0

Shell命令 文件压缩解压缩之gzip、zip详解

little bottle

little bottle

发布时间:2019-04-29 09:32:23

|

5194人浏览过

|

来源于51cto

转载

本篇文章的主要内容讲述的是shell命令中之文件压缩解压缩之gzip、zip,具有一定参考价值,感兴趣的朋友可以了解一下,希望对你有所帮助。 

1.gzip:gzip压缩工具

gzip命令的功能说明:

gzip 命令用于压缩文件。gzip 是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出 .gz 的扩展名。

gzip命令的语法格式:

gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name ... ]
gzip [-acdfhlLnNqrtvV][-S <压缩字尾字符串>][-<压缩效率>][--best/fast][文件...] 或 gzip [-acdfhlLnNqrtvV][-S <压缩字尾字符串>][-<压缩效率>][--best/fast][目录]

gzip命令的常用参数说明:

gzip 参数很多,如下为 gzip 命令的参数及说明:

参数选项          解释说明

-a或--ascii     使用ASCII文字模式。    

-c或--stdout或--to-stdout     把压缩后的文件输出到标准输出设备,不去更动原始文件。    

-d或--decompress或----uncompress     解开压缩文件。    

-f或--force     强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。    

-h或--help     在线帮助。    

-l或--list      列出压缩文件的相关信息。    

-L或--license     显示版本与版权信息。    

-n或--no-name     压缩文件时,不保存原来的文件名称及时间戳记。    

-N或--name     压缩文件时,保存原来的文件名称及时间戳记。    

-q或--quiet      不显示警告信息。    

-r或--recursive     递归处理,将指定目录下的所有文件及子目录一并处理。    

-S或----suffix     更改压缩字尾字符串。    

-t或--test     测试压缩文件是否正确无误。    

-v或--verbose     显示指令执行过程。    

-V或--version     显示版本信息。    

-     压缩效率是一个介于1-9的数值,预设值为"6",指定愈大的数值,压缩效率就会愈高。    

--best     此参数的效果和指定"-9"参数相同。    

--fast      此参数的效果和指定"-1"参数相同。    

gzip命令的实践操作

范例1: 压缩文件

[root@m01 ~]#  ls  <-->显示当前目录文件
a.c b.h d.cpp
[root@m01 ~]# gzip *  <-->压缩目录下的所有文件[root@w3cschool.cc a]# 
[root@m01 ~]# ls   <-->显示当前目录文件
a.c.gz    b.h.gz    d.cpp.gz

范例2: 接范例1, 列出详细的信息

[root@m01 ~]#  gzip -dv *  <-->解压文件,并列出详细信息
a.c.gz:     0.0% -- replaced with a.c
b.h.gz:     0.0% -- replaced with b.h
d.cpp.gz:     0.0% -- replaced with d.cpp

范例3: 接范例1,显示压缩文件的信息

[root@m01 ~]# gzip -l *
     compressed    uncompressed ratio uncompressed_name
         24          0  0.0% a.c
         24          0  0.0% b.h
         26          0  0.0% d.cpp

2. zip:压缩工具

zip命令的功能说明

zip 命令用于压缩文件。zip 是个使用广泛的压缩程序,文件经它压缩后会另外产生具有 .zip 扩展名的压缩文件。

zip命令的语法格式

zip [-aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$] [--longoption ...] [-b path] [-n suffixes] [-t date] [-tt date]
zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]

zip命令的常用参数说明:

zip 参数很多,如下为 zip 命令的参数及说明:

参数选项         解释说明

-A     调整可执行的自动解压缩文件。

-b     指定暂时存放文件的目录。

-c     替每个被压缩的文件加上注释。

-d     从压缩文件内删除指定的文件。

百宝箱
百宝箱

百宝箱是支付宝推出的一站式AI原生应用开发平台,无需任何代码基础,只需三步即可完成AI应用的创建与发布。

下载

-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命令的实践操作

范例1: 将 /home/html/ 这个目录下所有文件和文件夹打包为当前目录下的 html.zip:

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

范例2: 如果在我们在 ·/home/html· 目录下,可以执行以下命令:

zip -q -r html.zip *

范例3: 从压缩文件 cp.zip 中删除文件 a.c

zip -dv cp.zip a.c

今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津

相关教程:Linux视频教程

作者最新文章

jq是指什么?

2019-05-31 16:04

vue是做什么的

2019-05-31 16:58

mysql能干什么

2019-05-31 17:15

怎么用cmd进入mysql

2019-05-31 17:24

mysql怎么输入

2019-05-31 17:41

mysql免费版好用么

2019-05-31 17:53

mysql慢查询是什么

2019-05-31 18:00

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

760

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

221

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

1566

2023.10.24

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

649

2023.11.24

java读取文件转成字符串的方法
java读取文件转成字符串的方法

Java8引入了新的文件I/O API,使用java.nio.file.Files类读取文件内容更加方便。对于较旧版本的Java,可以使用java.io.FileReader和java.io.BufferedReader来读取文件。在这些方法中,你需要将文件路径替换为你的实际文件路径,并且可能需要处理可能的IOException异常。想了解更多java的相关内容,可以阅读本专题下面的文章。

1228

2024.03.22

php中定义字符串的方式
php中定义字符串的方式

php中定义字符串的方式:单引号;双引号;heredoc语法等等。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

1184

2024.04.29

go语言字符串相关教程
go语言字符串相关教程

本专题整合了go语言字符串相关教程,阅读专题下面的文章了解更多详细内容。

192

2025.07.29

c++字符串相关教程
c++字符串相关教程

本专题整合了c++字符串相关教程,阅读专题下面的文章了解更多详细内容。

131

2025.08.07

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
进程与SOCKET
进程与SOCKET

共6课时 | 0.4万人学习

PHP入门到实战消息队列RabbitMQ
PHP入门到实战消息队列RabbitMQ

共22课时 | 1.4万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 2.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号