今天我们所讲一些压缩以及解压缩的内容,可以方便我们去传输一些数据较大的文件,以及可以降低我们的内存使用率, 节省空间。我们常用的工具对单个文件进行压缩有4种,对于多个文件进行打包压缩有2种。
1、compress(单个文件压缩)
压缩后的文件后缀名都是.Z结尾
compress file1 对单个文件压缩
-d 解压缩文件(uncompress或者zcat file.Z > file也可以解压缩)
-c > file1 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。
-f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1
-v 显示详细过程,可以查看压缩进程
compress 不经常用,压缩比相对于其它比较低。并且compress -d 不能补齐
2、gzip (单个文件压缩)
压缩的文件后缀为 .gz
gzip file 压缩file单个文件
-d 解压文件 (gunzip或者zcat file.gz > file都可以解压缩)
-c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。
-f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1
-v 显示详细过程,可以查看压缩进程
-# 数字越大,压缩比越高,速度越慢,文件越小。
-1 等于 – -fast
-2,3,4,5,6(默认),7,8
-9 等于 – -best
这个gzip 相对于compress较为常用,这个对于-d 后面就能补全,大家可以试试。
3、bzip2(单个文件压缩)
压缩的文件后缀名都为 .bz2
-d 解压文件 (bunzip或者bzcat file.bz2 > file)
-c 将结果打印到屏幕上,配合重定向,不会覆盖原文件,但权限会变。
-f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1
-v 显示详细过程,可以查看压缩进程
-k 保留原文件
-# 数字越大,压缩比越高,速度越慢,文件越小。
-1 等于 – -fast
-2,3,4,5,6,7,8
-9 等于 – -best(默认)
相对于前面两个这个多个-k,可以直接保留原文件了。
4、xz(单个文件压缩)
压缩的文件后缀名都为 .xz
-d 解压文件 (xzcat)
-k 保留原文件 权限不变
-f 默认不对硬链接数为2及以上的文件压缩,加上f,强制压缩指定文件,而其他同inode的文件硬链接数减1
-v 显示详细过程,可以查看压缩进程
-# 数字越大,压缩比越高,速度越慢,文件越小。
-0 等于 – -fast
-1,2,3,4,5,6(默认),7,8
-9 等于 – -best
xz 压缩也是多个-k选项,能直接保留原文件,相对于bzip2 多个-0 ,这个也经常用。我们可以在centos官方压缩包里面看到大多数都是xz bz2 gz
5、zip (打包压缩)
压缩生成的文件后缀名都是.zip
zip -r 压缩后新名字 (文件或目录)
unzip解压缩
|zip 将生成的文件名 –
可以将管道前的输出结果转为文件并压缩。通过此方式压缩的文件只能使用“unzip -p 压缩包 > 新文件 ”来解压缩
如果只输入zip -p 就是预览压缩包里面的内容
6、tar(打包压缩)*****最为重要
-cf 创建的包名字 原文件(可以指定多个)
-tf 包名字 显示包中的文件名
-tvf 详细显示包中的文件名
-rf 包名字 新文件名(可以指定多个) 添加文件进入以生成的包里面
– -delete -f 包名字 被删除的文件名(可以指定多个)
-xf 包名字 解出所有的文件到当前目录
-xf 包名字 文件 解所指定的文件到当前目录
-xf 包名字 -C 指定目录 解锁指定的压缩包到指定目录
-v 显示过程
-Jcf 创建包的名字(.tar.xz) 原文件(可以指定多个) 打包并用xz压缩
-jcf 创建包的名字(.tar.bz2) 原文件(可以指定多个) 打包并用bzip压缩
-zcf 创建包的名字(.tar.gz) 原文件(可以指定多个) 打包并用gzip压缩
我们可以根据压缩后的大小能看出来压缩方式不一样。
分割文件与合并文件
split –b Size –d tar-file-name prefix-name 将tar包分隔为多个文件 (分割文件)
cat 被分隔出的多个文件名 > 单个文件名 (合并文件)
掌握以上的六种技能,就可以对一些分散的文件集中化处理,希望能对大家有帮助。
原创文章,作者:In summer,如若转载,请注明出处:http://www.178linux.com/84504