一、简介
zip和unzip是linux中压缩与解压工具。zip命令,可以一个或多个文件或是目录,压缩成“.zip”格式的压缩文件;unzip,可以将zip压缩的文件解压到指定的目录。
二、语法
1、zip压缩文件或目录zip [参数] 压缩后的形成的压缩包 需要压缩的文件或目录
备注:“压缩后的形成的压缩包”,可以带扩展名,也可以不带扩展名,如果不带扩展名,压缩后的文件,会自动加上。
比如:我想压缩当前目录下面的 dq.html文件,可以执行如下命令:zip dq dq.html
2、unzip解压缩zip [参数] 需要解压的压缩包
比如将上面的dq.zip中的文件,解压到家目录中,执行的命令如下:unzip dq.zip -d ~/
三、常用参数解决
1、zip命令的常用参数-d:从压缩文件内删除指定的文件
-D:压缩文件内不建立目录名称
-g:将文件压缩后附加在已有的压缩文件之后,而非另行建立新的压缩文件
-m:将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中
-q:不显示指令执行过程
-r:递归处理,将指定目录下的所有文件和子目录一并处理
-S:包含系统和隐藏文件
-t:把压缩文件的日期设成指定的日期
-v:显示指令执行过程或显示版本信息
-z:替压缩文件加上注释
-:压缩效率是一个介于1~9的数值
1、unzip命令的常用参数-l:显示压缩文件内所包含的文件
-t:检查压缩文件是否正确
-v:执行时显示详细的信息
-z:仅显示压缩文件的备注文字
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有的文件
-d:指定文件解压缩后所要存储的目录
-Z:unzip-Z等于执行zipinfo指令
四、其他
1、如何从压缩包中删除文件
使用的是zip -d命令,比如从dq.zip中删除 dq.html文件,命令如下:zip -d dq.zip dq.html
由于压缩包中就一个文件,删除后,就成了空压缩包了。
2、如何往压缩包中添加文件
使用的是zip -m 命令,或zip -g命令
如往dq.zip压缩包中,新增文件 TestGo.iml 和 test.sh ,使用的命令如下:zip -g dq.zip test.sh
压缩后,test.sh文件保留zip -m dq.zip TestGo.iml
压缩后,TestGo.iml文件将被删除。
3、可以查看压缩包中的内容
我们可以使用unzip -z来查看压缩包的内容,当然,我们也可以使用zipinfo来查看压缩包内容,如下:
此外,我们也可以使用unzip -l命令,如下:
4、如何从zip压缩包中提取出某一个文件
有的时候,压缩包可能很大,而我们仅仅需要压缩包中的一个或某几个文件,要是把整个压缩包解压,肯定会很耗时。此时,我们可以仅仅从压缩包中,提取指定的文件,格式如下:unzip zip压缩包 提取的文件 -d 提取的文件存放的目录
比如,我想从 dq.zip 中,提取出所有 .sh结尾的文件,存放到 dq目录,命令如下:unzip dq.zip *.sh -d dq