首页 > 系统服务 > 详细

linux压缩打包总结

时间:2017-11-20 01:00:38      阅读:401      评论:0      收藏:0      [点我收藏+]

1 压缩打包介绍

linux 下压缩文件有

Linux .zip,.gz,.bz2,.xz,.tar.gz,.tar.bz2,.tar.xz

2 gzip压缩工具

 gzip 不能压缩目录

小测试:

压缩前期工作:
[root@chy tmp]# mkdir d6z 
[root@chy tmp]# cd d6z/
[root@chy d6z]# find /etc/ -type f -name "*conf" -exec cat {} >> lf.txt \;(查找/etc/*conf的配置文件,查看后将内容追加到lf.txt里面
[root@chy d6z]# du -sh lf.txt(查看lf.txt的大小)
296K	lf.txt
[root@chy d6z]# gzip lf.txt (压缩文件,gzip 后直接跟文件)
[root@chy d6z]# du -sh lf.txt.gz
308K	lf.txt.gz
[root@chy d6z]# gzip -d lf.txt.gz (解压缩,gzip -d )=gunzip lf.txt.gz 
[root@chy d6z]# file lf.txt.gz (file 查看文件类型)
[root@chy d6z]# zcat lf.txt.gz (查看压缩文件的内容)
root@chy d6z]# gzip -c lf.txt > /tmp/lf.txt.gz (压缩时原文件存在)
[root@chy d6z]# gunzip -c /tmp/lf.txt.gz > /tmp/d6z/chy.txt  =gzip -d /tmp/lf.txt.gz >/tmp/d6z/chy.txt (解压缩时文件存在)
[root@chy d6z]# wc -l lf.txt chy.txt(比较存在的两个文件的大小)
  30864 lf.txt
  30864 chy.txt
  61728 总用量

3 bzip2压缩工具

bzip2不能压缩目录

[root@chy d6z]# yum install -y bzip2 
[root@chy d6z]# bzip2 lf.txt (bzip2压缩文件)
[root@chy d6z]# bzip2 -d lf.txt.bz2 = bunzip lf.txt.bz2 (解压缩)
[root@chy d6z]# bzip2 -c lf.txt > /tmp/lf.txt.bz2 (bzip2 压缩文件时原文件存在)
[root@chy d6z]# bunzip2 -c /tmp/lf.txt.bz2 > /tmp/d6z/lll.txt(bzip2解压缩时原文件存在)
[root@chy d6z]# bzcat chy.txt.bz2  查看压缩文件的内容

4 xz压缩工具

不能压缩目录

[root@chy d6z]# xz chy.txt(压缩文件)
)
[root@chy d6z]# xz -d chy.txt.xz = unxz chy.txt.xz (解压缩)
xz -c chy.txt> /tmp/chy.txt.xz
 xz -d -c /tmp/chy.txt.xz > 1.txt.new3
 [root@chy d6z]# xzcat chy.txt.xz
查看压缩的文件

5 zip压缩工具

zip支持压缩目录 zip命令可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。 

[root@chy d6z]# yum install -y zip  (安装zip包)
[root@chy d6z]# zip lf.txt.zip chy.txt
(zip 后跟压缩后文件的名称 最后在跟需要压缩的文件)
[root@chy d6z]# zip -r chy.zip aminglinux lll.txt
(zip 后跟-r 是压缩目录 zip -r 跟压缩完成后的名称后跟压缩的目录以及想要压缩的目录)
(如下是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的数值。

unzip命令

unzip命令用于解压缩由zip命令压缩的“.zip”压缩包。
语法:unzip(选项)(参数)
[root@chy d6z]# yum install -y unzip (安装解压缩的命令)
[root@chy d6z]# unzip -d /tmp/aminglinux ddd.zip
指定解压到其它目录下
unzip 选项如下
-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;
-d<目录>:指定文件解压缩后所要存储的目录;
-x<文件>:指定不要处理.zip压缩文件中的哪些文件;
-Z:unzip-Z等于执行zipinfo指令。

6 tar打包工具

tar命令可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。   

Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。

[root@chy d6z]# tar -cvf aminglinux.tar aminglinux (打包文件tar 后跟c 是创建 v是可视化,f是后跟要包的名称)
[root@chy d6z]# tar -xvf aminglinux.tar 
(-x是解包)
[root@chy d6z]# tar -cvf chylinux.tar --exclude "*".txt chylinux (--exclude 是除了一个要打包的内容)
[root@chy d6z]# tar -tf aminglinux.tar
(tar可以查看打包文件的内容)

7  打包并压缩

[root@chy d6z]# tar -zcvf chylinux.tar.gz chylinux (打包并压缩成gzip的格式)
[root@chy d6z]# tar -cjvf chylinux.tar.bz2 chylinux (打包并压缩成bz2的格式)
[root@chy d6z]# tar -cJvf chylinux.tar.xz chylinux
(打包成xz的压缩方式)
[root@chy d6z]# tar -tf chylinux.tar.xz 
(查看打包的内容)

希望看过的童鞋多多指教,谢谢!技术分享图片技术分享图片

linux压缩打包总结

原文:http://chy940405.blog.51cto.com/11344281/1983350

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!