文档的压缩与打包
常见压缩文件
Windows :.rar .zip .7Z
Linux : .zip,.gz,bz2,.xz,.tar.gz,tar.bz2,.tar.xz
一、压缩打包工具常见的压缩文件:
1、 .gzip .gz .bz2 .xz .tar.gz .tar.bz2 .tar.xz
gzip压缩工具(不可压缩目录)
命令格式为:gzip [-d#] filename,其中#为1~9数字
-d:该参数在解压缩时使用
-#:表示压缩等级,1为最差,9为最好,6为默认
bzip2压缩工具(不可压缩目录)
1、压缩格式:bzip2 filename (默认压缩级别是9)
2、解压格式:bzip2 -d filename.bz2 或者 bunzip2 filename.bz2
四、xz压缩工具(可压缩目录)
压缩格式: xz filename
解压格式:xz -d filename.xz或者unxz filename.xz
zip压缩工具
zip命令可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。
安装命令: yum install -y zip
zip(选项)(参数)
选项:
-A:调整可执行的自动解压缩文件;
-b<工作目录>:指定暂时存放文件的目录;
-c:替每个被压缩的文件加上注释;
-d:从压缩文件内删除指定的文件;
-D:压缩文件内不建立目录名称;
-f:此参数的效果和指定“-u”参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中;
-F:尝试修复已损坏的压缩文件;
-g:将文件压缩后附加在已有的压缩文件之后,而非另行建立新的压缩文件;
-h:在线帮助;
-i<范本样式>:只压缩符合条件的文件;
-j:只保存文件名称及其内容,而不存放任何目录名称;
-J:删除压缩文件前面不必要的数据;
-k:使用MS-DOS兼容格式的文件名称;
-l:压缩文件时,把LF字符置换成LF+CR字符;
-ll:压缩文件时,把LF+cp字符置换成LF字符;
-L:显示版权信息;
-m:将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中;
-n<字尾字符串>:不压缩具有特定字尾字符串的文件;
-o:以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同;
-q:不显示指令执行过程;
-r:递归处理,将指定目录下的所有文件和子目录一并处理;
-S:包含系统和隐藏文件;
-t<日期时间>:把压缩文件的日期设成指定的日期;
-T:检查备份文件内的每个文件是否正确无误;
-u:更换较新的文件到压缩文件内;
-v:显示指令执行过程或显示版本信息;
-V:保存VMS操作系统的文件属性;
-w:在文件名称里假如版本编号,本参数仅在VMS操作系统下有效;
-x<范本样式>:压缩时排除符合条件的文件;
-X:不保存额外的文件属性;
-y:直接保存符号连接,而非该链接所指向的文件,本参数仅在UNIX之类的系统下有效;
-z:替压缩文件加上注释;
-$:保存第一个被压缩文件所在磁盘的卷册名称;
-<压缩效率>:压缩效率是一个介于1~9的数值。
参数
zip压缩包:指定要创建的zip压缩包;
文件列表:指定要压缩的文件列表。
示例命令如下:
[root@localhost ~]# zip wang.zip wang.txt
updating: wang.txt (stored 0%)
[root@localhost ~]# ls
anaconda-ks.cfg wang.txt wang.zip
安装解压缩命令:yum install -y unzip
gzip与zip的不同:
gzip是一种文件压缩工具(或该压缩工具产生的压缩文件格式),它的设计目标是处理单个的文件。gzip在压缩文件中的数据时使用的就是zlib。为了保存与文件属性有关的信息,gzip需要在压缩文件(*.gz)中保存更多的头信息内容,而zlib不用考虑这一点。但gzip只适用于单个文件,所以我们在UNIX/Linux上经常看到的压缩包后缀都是*.tar.gz或*.tgz,也就是先用tar把多个文件打包成单个文件,再用gzip压缩的结果。
zip只是一种数据结构,跟rar同类型。zip是适用于压缩多个文件的格式(相应的工具有PkZip和WinZip等),因此,zip文件还要进一步包含文件目录结构的信息,比gzip的头信息更多。但需要注意,zip格式可采用多种压缩算法,我们常见的zip文件大多不是用zlib的算法压缩的,其压缩数据的格式与gzip大不一样。
zip是将文件打包为zip格式的压缩文件
gzip是将文件打包为tar.gz格式的压缩文件
unzip是从zip包中解压出某个文件
gunzip从tar.gz包中解压出某个文件
tar打包
命令格式:
tar[必要参数][选择参数][文件]
命令功能:用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的 。
命令参数:
必要参数有如下:
-A 新增压缩文件到已存在的压缩
-B 设置区块大小
-c 建立新的压缩文件
-d 记录文件的差别
-r 添加文件到已经压缩的文件
-u 添加改变了和现有的文件到已经存在的压缩文件
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip解压文件
-j 支持bzip2解压文件
-Z 支持compress解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-W 确认压缩文件的正确性
可选参数如下:
-b 设置区块数目
-C 切换到指定目录
-f 指定压缩文件
--help 显示帮助信息
--version 显示版本信息
(可以打包文件跟目录,也可以把目录跟文件一起打包)
tar包管理
1、tar包的创建
tar -cvf file.tar file1 file2
tar -zcvf file.tar.gz file1 file2
tar -jcvf file.tar.bz2 file1 file2
2、tar包的查看
tar -tvf file.tar
tar -ztvf file.tar.gz
tar -jtvf file.tar.bz2
3、释放tar包
tar -xvf file.tar
tar -zxvf file.tar.gz
tar -jxvf file.tar.bz2
计算机下的压缩原理
利用tar 通过网络拷贝数据 http://www.lishiming.net/thread-152-1-2.html
Tar打包、压缩与解压缩到指定目录的方法 http://www.lishiming.net/thread-96-1-3.html
linux下不支持解压大于4G的zip压缩包 http://www.lishiming.net/thread-1813-1-1.html
实际应用:
http://study.lishiming.net/chapter11.html