linux运用zip和unzip进行压缩解压缩实战操作详解

我以debian9进行操作演示

在默认没安装的情况下,我们先开始安装 ,敲完下命令就自动安装了

apt-get install zip unzip -y

我以下图为例,先ls查看要压缩的文件,比如test.log

zip:压缩命令

格式:zip 压缩后生成文件名.zip 源文件名

zip test.zip test.log

还有一些附加的参数,比如zip后面跟-r,表示递归压缩子目录下所有文件  zip -r xx.zip ./* ,将当前目录下的所有文件和文件夹全部压缩成xx.zip

还可以这样给文件夹直接打包

zip -r 压缩文件名.zip 文件夹名/

分割线————————————

下面说一下解压缩命令

unzip:解压缩命令

格式:unzip 要解压的文件.zip

unzip test.zip

unzip也可以后面跟着参数,比如unzip跟-0,表示不提示的情况直接覆盖文件,unzip -d /etc/ test.zip,表示指定解压到/etc/的目录下

分割线————————————

其他还有一些拓展操作,比如往zip里添加文件,或者删除指定文件

先看下添加文件

zip -m 压缩包文件.zip 要添加的文件名

跟-m表示向压缩文件中test.zip中添加tcp.sh文件

zip -m test.zip tcp.sh

从压缩包中删除文件

zip -d test.zip tcp.sh

linux zip命令参数列表:

-a 将文件转成ASCII模式
-F 尝试修复损坏的压缩文件
-h 显示帮助界面
-m 将文件压缩之后,删除源文件

-n 特定字符串 不压缩具有特定字尾字符串的文件
-o 将压缩文件内的所有文件的最新变动时间设为压缩时候的时间
-q 安静模式,在压缩的时候不显示指令的执行过程
-r 将指定的目录下的所有子目录以及文件一起处理
-S 包含系统文件和隐含文件(S是大写)
-t 日期 把压缩文件的最后修改日期设为指定的日期,日期格式为mmddyyyy

 

unzip参 数:
-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。
-f 更新现有的文件。
-l 显示压缩文件内所包含的文件。
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。
-t 检查压缩文件是否正确。
-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-v 执行是时显示详细的信息。
-z 仅显示压缩文件的备注文字。
-a 对文本文件进行必要的字符转换。
-b 不要对文本文件进行字符转换。
-C 压缩文件中的文件名称区分大小写。
-j 不处理压缩文件中原有的目录路径。
-L 将压缩文件中的全部文件名改为小写。
-M 将输出结果送到more程序处理。
-n 解压缩时不要覆盖原有的文件。
-o 不必先询问用户,unzip执行后覆盖原有文件。
-P<密码> 使用zip的密码选项。
-q 执行时不显示任何信息。
-s 将文件名中的空白字符转换为底线字符。
-V 保留VMS的文件版本信息。
-X 解压缩时同时回存文件原来的UID/GID。
[.zip文件] 指定.zip压缩文件。
[文件] 指定要处理.zip压缩文件中的哪些文件。
-d<目录> 指定文件解压缩后所要存储的目录。
-x<文件> 指定不要处理.zip压缩文件中的哪些文件。
-Z unzip -Z等于执行zipinfo指令

THE END