zip命令详解
好文链接:https://www.cnblogs.com/yinzhengjie/p/6247833.html
原文链接:https://www.cnblogs.com/ferryCaptain-cloud/p/7440200.html
功能说明:压缩文件。
语 法: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
将/root/mcw_test/这个目录下所有文件和文件夹打包为当前目录下的 mcw.zip:
zip -q -r mcw.zip /root/mcw_test
[root@xiaoma /root/xiaoma] test!
#ls -F /root/mcw_test/
.sh ma.txt xiaoma_guohe/ 魔降风云变.txt
[root@xiaoma /root/xiaoma] test!
#zip -q -r mcw.zip /root/mcw_test
[root@xiaoma /root/xiaoma] test!
#ls
mcw.zip
如果在我们在 /root/mcw_test/目录下,可以执行以下命令:
zip -d mcw.zip root/mcw_test/ma.txt
[root@xiaoma /root/mcw_test] test!
#zip -q -r mcw.zip *
[root@xiaoma /root/mcw_test] test!
#ls -F
.sh ma.txt mcw.zip xiaoma_guohe/ 魔降风云变.txt
从压缩文件 mcw.zip 中删除文件 ma.txt
zip -d mcw.zip root/mcw_test/ma.txt
[root@xiaoma /root/mcw_test/mcw] test!
#ls /root/mcw_test/
.sh ma.txt mcw mcw.zip xiaoma_guohe 魔降风云变.txt
[root@xiaoma /root/mcw_test/mcw] test!
#zip -q -r mcw.zip /root/mcw_test/*
[root@xiaoma /root/mcw_test/mcw] test!
#zip -d mcw.zip root/mcw_test/ma.txt
deleting: root/mcw_test/ma.txt
[root@xiaoma /root/mcw_test/mcw] test!
#unzip mcw.zip ;ls root/mcw_test/
Archive: mcw.zip
inflating: root/mcw_test/1.sh
creating: root/mcw_test/mcw/
extracting: root/mcw_test/mcw.zip
creating: root/mcw_test/xiaoma_guohe/
extracting: root/mcw_test/魔降风云变.txt
1.sh mcw mcw.zip xiaoma_guohe 魔降风云变.txt
(1)将/etc目录下的所有文件以及目录进行压缩,设置压缩级别为最高,保存到文件/opt/etc.zip。
[root@mylinux ~]# zip -r /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
zip命令详解的更多相关文章
- CentOS 打包压缩文件 zip 命令详解
我们再linux中常见的压缩文件有.tar.gz,.zip,.gz,在linux中,你要习惯没有.rar的日子. 一下为tar,zip命令详解 tar -zcvf /home/files.tar.gz ...
- linux zip 命令详解
功能说明:压缩文件. 语 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时 ...
- Linux zip命令详解
zip常见命令参数 Usage: zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list] The ...
- Linux下的压缩zip,解压缩unzip命令详解及实例
实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...
- DOS命令详解
DOS命令详解 命令 \? 可以进入命令帮助 1.md命令创建目录. MKDIR [drive:]pathMD [drive:]path 如果命令扩展被启用,MKDIR 会如下改变: 如果需要,MKD ...
- tar 解压缩命令详解
今天对目录及其文件进行压缩:/usr/local/test# tar -cvf /usr/local/auto_bak/test.tar /usr/local/test 仅打包,不压缩 # tar - ...
- Linux下的压缩解压缩命令详解
linux zip命令zip -r myfile.zip ./*将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzipunzip -o - ...
- Linux命令详解之–ls命令
今天开始为大家介绍下Linux中常用的命令,首先给大家介绍下Linux中使用频率最高的命令--ls命令. 更多Linux命令详情请看:Linux命令速查手册 linux ls命令用于显示指定工作目录下 ...
- Android Studio系列教程五--Gradle命令详解与导入第三方包
Android Studio系列教程五--Gradle命令详解与导入第三方包 2015 年 01 月 05 日 DevTools 本文为个人原创,欢迎转载,但请务必在明显位置注明出处!http://s ...
随机推荐
- React 入门学习笔记2
摘自阮一峰:React入门实例教程,转载请注明出处. 一.获取真实的DOM节点 组件并不是真实的 DOM 节点,而是存在于内存之中的一种数据结构,叫做虚拟 DOM (virtual DOM).只有当它 ...
- (转)添加Template(模板)并基于模板部署应用
通过Template,可以定义一个或多个需要部署的镜像,定义依赖的对象,定义可供用户输入的配置参数项. 以cakephp-mysql.json为例. # oc create -f https://ra ...
- UCOSii和Linux的区别和联系
UCOSii和Linux的区别和联系 想通过UCOSii来理解Linux的系统架构,故参考一些资料,简单整理了一下UCOSii和Linux的区别和联系,以此来更好的学习Linux. 其具体对比如下: ...
- C++中的随机函数
一.random函数不是ANSI C标准,不能在gcc,vc等编译器下编译通过. 可改用C++下的rand函数来实现. 1.C++标准函数库提供一随机数生成器rand,返回0-RAND_MA ...
- 快速开发平台分享-UCML快速开发七种武器
传统的快速开发平台强调的是组件重用.构件重用,主要解决功能重用层面,一般提供了软件开发最常用的功能:表单设计.BPM(业务流程管理).报表.组织机构及权限等功能.但只有功能重用,没有过程重用,要么只能 ...
- js array数组对象操作方法汇总
--------------------------更新自2018.6.11 js 数组对象操作方法如下: 1. 创建数组 var array1 = [1,2] //方法一 var array2 = ...
- GoogleTest初探(1)
此篇主要了解一下GoogleTest中的断言. 总的来说,GoogleTest中的断言分为两大类:EXPECT_*和ASSERT_*,这两者在测试成功或失败后均会给出测试报告,区别是前者在测试失败后会 ...
- 十张图了解Docker【转】
这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image)之间的区别,并深入探讨容器和运行中的容器之间的区别. 当我对Docker技术还是一知半解的时候,我 ...
- 【转】mxGraph教程-开发入门指南
原文:https://blog.csdn.net/sunhuaqiang1/article/details/51289580 mxGraph教程-开发入门指南 概述 mxGraph是一个JS绘图组件适 ...
- JavaWeb总结(五)
使用Servlet接受服务器请求信息 HTTP请求示例 HttpServletRequest对象主要用于获取由客户端发送过来的请求头.参数.文件.数据等.Servlet存在的主要目的就是处理请求.Se ...