日期:2014-05-16  浏览次数:20765 次

linux zip unzip 压缩和解压缩命令

zip 是linux下的常用压缩压缩命令?之一,文件经它压缩后会另外产生具有".zip"扩展名的压缩文件,因为zip能方便在windows下使用,所以zip是个使用广泛的压缩程序。

语法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件...][-i <范本样式>][-x <范本样式>]

参数
? -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的数值。
? -A?? 调整可执行的自动解压缩文件。
? -b<工作目录>?? 指定暂时存放文件的目录。
? -c?? 替每个被压缩的文件加上注释。
? -d?? 从压缩文件内删除指定的文件。
? -D?? 压缩文件内不建立目录名称。
? -f?? 此参数的效果和指定"-u"参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
? -F?? 尝试修复已损坏的压缩文件。
? -g?? 将文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
? -h?? 在线帮助。

语法和参数都少,其实只记住常用的就够了

基本用法是:zip [参数] [打包后的文件名] [打包的目录路径]

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

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

例如:

zip –q –r?? ad.zip??? /home/public_html/ad

上面的命令是将/home/public_html/ad/ 这个目录下所有文件和目录打包,并生成当前目录下的ad.zip

也可以使用 zip 命令同时处理多个文件和目录,方法是将它们逐一列出,并用空格间隔:

zip –q –r?? ad.zip?? file1 file2? /home/public_html/ad

上面的命令是将/home/public_html/ad/ 这个目录下所有文件和目录,以及file1 file2一起打包

unzip命令

可以解压windows下的zip格式的压缩文件

语法:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]

参  数:
-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指令

例如:解压上面生成的ad.zip

unzip ad.zip