Linux命令(31):zip/unzip命令-打包压缩

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令(31):zip/unzip命令-打包压缩相关的知识,希望对你有一定的参考价值。

zip命令


功能说明

    zip程序即是文件压缩工具也是文件归档工具,可以对文件或者目录进行压缩或解压,压缩格式为zip。在Linux系统中,gzip才是主要的压缩指令,而bzip2仅次之。Linux用户主要使用zip程序与Windows系统交换文件,而不是将其用于压缩或是归档文件。用法如下:

  zip [选项] 压缩文件名 需要压缩的文档列表

  unzip [选项] 压缩文件名

常用参数

选项说明
zip命令
-r递归压缩,将指定目录下的所有文件以及子目录全部压缩
-d从压缩文件内删除指定的文件
-i "文件列表"只压缩文件列表中的文件
-x "文件列表"压缩时排队文件列表中指定的文件
-u更新文件到压缩文件中
-m将文件加入压缩文件压缩后,删除原始文件,即马文件移至压缩文件中
-F尝试修复损坏的压缩文件
-T检查压缩文件内的每个文件是否正确无误
- #压缩级别是1-9之间的一个数字
unzip命令
-x "文件列表"解压文件,但不包含文件列表中指定的文件
-t测试压缩文件有无损坏,并不解压
-v查看压缩文件的详细信息,具体包括压缩文件中包含的文件大小、文件名和压缩比等,并不解压
-n解压时不覆盖已经存在的文件
-o解压时覆盖已经存在的文件,并且不要求用户确认
-d 目录名把压缩文件解压到指定目录下

示例                    

    对test目录下的所有文件以及目录进行压缩

[[email protected] app]# zip -9r test.zip test/

    对test目录中所有文件以及子目录压缩,除了*.gz的文件,压缩后的文件保存在当前目录

[[email protected] app]# ls -l test

总用量 216

-rw-r--r--. 1 root root    181 11月 23 17:07 99.sh

-rw-------. 1 root root  11595 11月 23 17:07 messages

-rw-r--r--. 1 root root   1149 11月 23 17:07 messages2.gz

-rw-r--r--. 1 root root   1202 11月 23 17:07 messages.gz

-rw-r--r--. 1 root root 143538 11月 23 17:07 shell.txt

-rw-r--r--. 1 root root  48218 11月 23 17:07 shell.txt.bz2

[[email protected] app]# zip -r test3.zip test -x "*.gz"    #没有压缩*.gz的文件

  adding: test/ (stored 0%)

  adding: test/99.sh (deflated 30%)

  adding: test/messages (deflated 90%)

  adding: test/shell.txt (deflated 62%)

  adding: test/shell.txt.bz2 (deflated 0%)

    使用-d参数将上面test3.zip中的test/shell.txt文件从压缩包中删除

[[email protected] app]# zip test3.zip -d test/shell.txt

deleting: test/shell.txt

    使用-u参数,将修改了的/test/99.sh文件,把更改的信息更新到test3.zip包中

[[email protected] app]# zip -u test3.zip /test/99.sh

updating: test/99.sh (deflated 30%)

    如果test目录下更新文件较多,也可以使用下面方法全部更新到test3.zip下

[[email protected] app]# zip -ru test3.zip /test/

    将test3.zip压缩文件全部解压到/tmp目录下,并且在解压过程如如果出现相同的文件就直接进行覆盖,不要求用户确认

[[email protected] app]# unzip -o test3.zip  -d /tmp/

[[email protected] test]# pwd

/tmp/test

[[email protected] test]# ls

99.sh  messages  shell.txt.bz2


学习自:

高俊峰《循序渐进Linux》


本文出自 “赵东伟的博客” 博客,请务必保留此出处http://zhaodongwei.blog.51cto.com/4233742/1876259

以上是关于Linux命令(31):zip/unzip命令-打包压缩的主要内容,如果未能解决你的问题,请参考以下文章

Linux下的压缩和解压缩命令——zip/unzip

Linux压缩和解压包常用命令:gzip tar zip/unzip命令使用示例

linux | 打包压缩命令

linux下zip/unzip详解

linux 下 zip unzip压缩与解压

linux初学 :linux 常用命令