linux unzip和zip
Posted DuoBa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux unzip和zip相关的知识,希望对你有一定的参考价值。
注:*压缩成限.zip格式文件
常用解压缩:
[[email protected] test]# unzip -o test.zip -d tmp/
将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件。
常用压缩:
[[email protected] test]# zip -r test.zip ./*
将当前目录下的所有文件和文件夹全部压缩成test.zip文件,-r表示递归压缩子目录下所有文件。
以下命令均在/home目录下操作
cd /home #进入/home目录
1、把/home目录下面的mydata目录压缩为mydata.zip
zip -r mydata.zip mydata #压缩mydata目录 压缩成 mydata.zip 文件
2、把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak
3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
zip -r abc123.zip abc 123.txt
4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
unzip wwwroot.zip
5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
unzip abc*.zip
6、查看把/home目录下面的wwwroot.zip里面的内容
unzip -v wwwroot.zip
7、验证/home目录下面的wwwroot.zip是否完整
unzip -t wwwroot.zip
8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
unzip -j wwwroot.zip
系统运维 温馨提醒:qihang01原创内容版权所有,转载请注明出处及原文链接
=====================================================
主要参数
-c:将解压缩的结果
-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 [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工 作目录>][-ll][-n <字 尾字符串>][-t <日 期时间>][-<压 缩效率>][压 缩文件][文件...][-i <范本样式>][-x <范本样式>]
补充说明:zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具 有".zip"扩展名 的压缩文件。
参 数:
-A 调 整可执行的自动解压缩文件。
-b<工作目录> 指 定暂时存放文件的目录。
-c 替 每个被压缩的文件加上注释。
-d 从 压缩文件内删除指定的文件。
-D 压 缩文件内不建立目录名称。
-f 此 参数的效果和指定"-u"参 数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
-F 尝 试修复已损坏的压缩文件。
-g 将 文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
-h 在 线帮助。
-i<范本样式> 只 压缩符合条件的文件。
-j 只 保存文件名称及其内容,而不存放任何目录名称。
-J 删 除压缩文件前面不必要的数据。
-k 使 用MS-DOS兼容格 式的文件名称。
-l 压 缩文件时,把LF字符 置换成LF+CR字 符。
-ll 压 缩文件时,把LF+CR字 符置换成LF字符。
-L 显 示版权信息。
-m 将 文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
-n<字尾字符串> 不 压缩具有特定字尾字符串的文件。
-o 以 压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
-q 不显 示指令执行过程。
-r 递 归处理,将指定目录下的所有文件和子目录一并处理。
-S 包 含系统和隐藏文件。
-t<日期时间> 把 压缩文件的日期设成指定的日期。
-T 检 查备份文件内的每个文件是否正确无误。
-u 更 换较新的文件到压缩文件内。
-v 显 示指令执行过程或显示版本信息。
-V 保 存VMS操作系统的文 件属性。
-w 在 文件名称里假如版本编号,本参数仅在VMS操 作系统下有效。
-x<范本样式> 压 缩时排除符合条件的文件。
-X 不 保存额外的文件属性。
-y 直 接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之 类的系统下有效。
-z 替 压缩文件加上注释。
-$ 保 存第一个被压缩文件所在磁盘的卷册名称。
-<压缩效率> 压 缩效率是一个介于1-9的 数值。
例子
例1. 压缩test.MYI
[[email protected] test]# zip test1.zip test.MYI
adding: test.MYI (deflated 42%)
[[email protected] test]#ll
-rw-r--r-- 1 root root 1033755 09-24 10:03 test1.zip
压缩率为8的
[[email protected] test]# zip test2.zip -8 test.MYI
adding: test.MYI (deflated 42%)
[[email protected] test]#ll
-rw-r--r-- 1 root root 1033451 09-24 10:03 test2.zip
例2. 将当前目录下的所有文件和文件夹全部压缩成test.zip文件,-r表示递归压缩子目录下所有文件
[[email protected] test]# zip -r test.zip ./*
打包目录
[[email protected] test]# zip test2.zip test2/*
例3. 删除压缩文件test1.zip中test.MYI文件
[[email protected] test]# zip -d test1.zip test.MYI
删除打包文件目录下的文件
[[email protected] test]# zip -d test2.zip test2/ln.log
deleting: tests/ln.log
例4. 向压缩文件中test1.zip中添加test. MYI文件
[[email protected] test]# zip -m test1.zip test. MYI
例5. 压缩文件时排除某个文件
[[email protected] test]# zip test3.zip tests/* -x tests/ln.log
命令名: unzip
功能说明:解压缩zip文 件
语 法:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密 码>][.zip文 件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]
补充说明:unzip为.zip压缩文件的解压缩程序。
参 数:
-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指 令。
例1:将压缩文件text.zip在当前目录下解压缩。
[[email protected] test]# unzip test.zip
例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。
[[email protected] test]# unzip -n test.zip -d /tmp
例3:查看压缩文件目录,但不解压。
[[email protected] test]# unzip -v test.zip
以上是关于linux unzip和zip的主要内容,如果未能解决你的问题,请参考以下文章