Linux系统zip压缩命令

不管是在 Windows 系统还是 Linux 系统中,我们常常会有一些大文件,特别占磁盘空间,对于这种占用空间大的文件我们很多时候就要用到 ZIP(压缩文件格式),ZIP 文件格式是一种数据压缩和文档储存的文件格式。除此之外,我们在工作或者学习中,难免需要给对方发送文件,而对于目录文件来说,大部分时候都不能直接发送,需要压缩之后才可以。在 Windows 中压缩文件很简单,只要你有压缩工具,随便点点就可以对一个文件夹进行压缩,而 Linux 不一样,只能通过命令行来操作,那么本文就带大家学习一下如何在 Linux 中压缩文件。

ZIP 命令功能介绍:

ZIP 压缩格式是 Windows 与 Linux 等多平台通用的压缩格式,通常使用 zip 压缩过的文件都是以后缀名 ".zip" 结尾的,很好区分。根 GZIP 命令相比,zip 命令压缩文件不仅不会删除源文件,而且还可以压缩目录。

语法格式:

zip [option] [file] zip [选项] [文件或目录]

常用参数选项:

-r:将指定目录下的所有文件和子目录一并压缩 -x:压缩文件时排除某个文件 -q:不显示压缩信息

介绍了 zip 命令的语法格式和常用参数选项,那么如果系统上没有这个命令说在多也没用,这里顺带也为大家介绍一下在 Linux 系统中 zip 命令的安装,当我们执行 zip 命令如果提示 「 -bash: zip: command not found 」,那就说明我们需要安装这个命令了。安装命令其实也很简单。

$ apt-get install zip $ yum install zip

image-20201116230700582

不同操作系统,安装的命令也不一样,安装了 zip 可以实现压缩,那么解压缩是不是也需要学习一下如何安装呀,很好理解,zip 是压缩,那么解压就是 unzip ,是不是觉得很简单,同样的,安装起来也很容易,一条简单的命令即可搞定:

$ apt-get install unzip $ yum install unzip

image-20201116230909183

其实 zip 的使用也很简单,下面就为大家用几个示例来说明:

压缩文件:

$ cd /test $ cp /etc/services ./ $ ll -h total 680K -rw-r--r--   1 root     root     676.0K Nov 15 15:10 services ​ 可以看到,这个文件的大小目前时 676k,下面我们执行压缩命令以后,直接变成了 139.3K,也可以看到提示,差不多压缩了 79%,可以说是压缩的非常狠了。 deflated:表示压缩率。 ​ $ zip services.zip ./services adding: services (deflated 79%) $ ll -h total 820K -rw-r--r--   1 root     root     676.0K Nov 15 15:10 services -rw-r--r--   1 root     root     139.3K Nov 15 15:11 services.zip

刚刚演示的是对文件的压缩,目录使用 zip 也可以进行压缩,如下:

$ zip etc.zip /etc/ adding: etc/ (stored 0%) 这里表示只是压缩目录这一个文件,目录下的文件没有压缩。 ​ $ zip -r etc.zip /etc/ 使用 '-r' 选项递归压缩 updating: etc/ (stored 0%) adding: etc/netconfig (deflated 59%) adding: etc/cron.weekly/ (stored 0%) adding: etc/rhsm/ (stored 0%) adding: etc/rhsm/syspurpose/ (stored 0%) adding: etc/rhsm/syspurpose/valid_fields.json (deflated 45%) adding: etc/shadow- (deflated 59%) ......

排除压缩:

$ zip shadow.zip ./shadow -x /test/passwd adding: shadow (deflated 56%) $ ll -h total 832K -rw-r--r--   1 root     root       1.8K Nov 15 15:21 passwd -rw-r--r--   1 root     root     676.0K Nov 15 15:10 services -rw-r--r--   1 root     root     139.3K Nov 15 15:11 services.zip ----------   1 root     root       1.1K Nov 15 15:21 shadow -rw-r--r--   1 root     root         656 Nov 15 15:22 shadow.zip

使用选项 -x 指定不压缩的文件,从结果里可以很明显的看出来,passwd 并没有被压缩。以上就是今天的内容,zip 是一个广泛使用的压缩命令,算是一个比较实用的命令,感兴趣的伙伴快去练习吧!

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Twitter的分布式自增ID算法snowflake (Java版)

概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移

Linux系统zip压缩命令 - HelloWorld