Linux系统管理与维护之-zip/unzip命令

1.功能说明
将一般的文件或者目录进行压缩或者解压,默认生成以“.zip”为后缀的压缩包。zip命令类似于Windows中的winzip压缩程序。其格式如下:
zip [选项] 压缩文件名 需要压缩的文档列表
unzip [选项] 压缩文件名
zip命令的选项及其说明如表4.27所示。
表4.27                                                  zip命令的选项及其说明

 文章源自靠谱运维-https://www.ixdba.net/archives/185

选  项
含  义
-r
递归压缩,将指定目录下的所有文件以及子目录全部压缩
-d
从压缩文件内删除指定的文件
-i “文件列表”
只压缩文件列表中的文件
-x “文件列表”
压缩时排除文件列表中指定的文件
-u
更新文件到压缩文件中
-m
将文件加入压缩文件压缩后,删除原始文件,即把文件移到压缩文件中
-F
尝试修复损坏的压缩文件
-T
检查压缩文件内的每个文件是否正确无误
- 压缩级别
压缩级别是一个1~9的数字

 文章源自靠谱运维-https://www.ixdba.net/archives/185

 
unzip命令的选项及其说明如表4.28所示。
表4.28                                                unzip命令的选项及其说明

 文章源自靠谱运维-https://www.ixdba.net/archives/185

选  项
含  义
-x "文件列表"
解压文件,但不包含文件列表中指定的文件
-t
测试压缩文件有无损坏,并不解压
-v
查看压缩文件的详细信息,具体包括压缩文件中包含的文件大小、文件名和压缩比等,并不解压
-n
解压时不覆盖已经存在的文件
-o
解压时覆盖已经存在的文件,并且不要求用户确认
-d 目录名
把压缩文件解压到指定目录下

 文章源自靠谱运维-https://www.ixdba.net/archives/185

 
2.举例
(1)将/etc目录下的所有文件以及目录进行压缩,设置压缩级别为最高,保存到文件/opt/etc.zip。
[root@mylinux ~]# zip -9r /opt/etc.zip /etc
(2)将/var目录中所有文件以及子目录压缩,除了“*.log”的文件,将压缩文件保存到/opt目录下。
[root@mylinux ~]#zip –r /opt/var.zip /var –x “*.log”
(3)将上面/opt/etc.zip中的etc/passwd文件从压缩包中删除。
[root@mylinux ~]#zip /opt/etc.zip –d etc/passwd
deleting: etc/passwd
(4)修改了/etc/inittab文件,希望把更改信息更新到/opt/etc.zip包中。
[root@mylinux ~]#zip –u /opt/etc.zip /etc/inittab
如果/etc目录下很多文件进行了修改或者增加了很多文件,就需要把/etc目录下的全部信息更新到/opt/etc.zip文件。可以使用以下命令:
[root@mylinux ~]#zip –u /opt/etc.zip /etc/* 或者使用
[root@mylinux ~]# zip –ru /opt/etc.zip /etc
看出点玄机了吗?在上例中,其实“/etc/*”就代表了/etc目录下的所有文件以及子目录,而这刚好是zip命令“-r”选项完成的功能。
(5)将/opt/etc.zip压缩文件全部解压到/etc目录下,除了etc/inittab文件,并且在解压过程中如果出现相同的文件就直接进行覆盖,不要求用户确认。可以使用以下命令:
[root@mylinux ~]#unzip –o /opt/etc.zip –x etc/inittab –d /etc
文章源自靠谱运维-https://www.ixdba.net/archives/185
  • 本文由 发表于 2012年6月10日15:41:44
  • 转载请务必保留本文链接:https://www.ixdba.net/archives/185
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: