Linux中的压缩指令
linux中,压缩文件的扩展名大多是:“.tar, .tar.gz, .tgz, .gz, .Z, .bz2, *.xz”,然后肯定就有人说linux中扩展名不是没什么作用吗?这个是当然,但是在linux中对文件的压缩指令特别多,且压缩技术都不相同,如果不加上后缀进行标识,那解压的时候是很头痛的,所以扩展名只是为了标识是用了什么压缩指令进行压缩的。
以下列出常见的压缩扩展名:
- *.Z compress 程序压缩的文件;
- *.zip zip 程序压缩的文件;
- *.gz gzip 程序压缩的文件;
- *.bz2 bzip2 程序压缩的文件;
- *.xz xz程序压缩的文件;
- *.tar tar程序打包的数据,并没有压缩过;
- *.tar.gz tar 程序打包的文件,其中并且经过 gzip 的压缩
- *.tar.bz2 tar 程序打包的文件,其中并且经过 bzip2 的压缩
- *.tar.xz tar 程序打包的文件,其中并且经过 xz 的压缩
其中常用的是:gzip,bzip2,zip以及xz.而纯tar只是打包的工具,并不具有压缩功能,tar可以将多个文件打包成一个文件,但是tar加上一些参数之后就可以进行打包并且压缩。
下面是具体的压缩指令及参数:
gzip:
-c :将压缩的数据输出到屏幕上,可通过数据流重导向来处理;
-d :解压缩的参数;
-t :可以用来检验一个压缩文件的一致性~看看文件有无错误;
-v :可以显示出原文件/压缩文件的压缩比等信息;
-# :# 为数字的意思,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!默认是 -6
首先新建一个test.text文件,然后使用gizp进行压缩
root@localhost:/tmp# gzip test.txt
结果内容:
15 11:03 test.txt.gz
这里要注意gzip压缩源文件就不存在了,当然gzip默认压缩后缀是.gz,如果想解压缩可以使用
root@localhost:/tmp# gzip -d test.txt.gz
bzip2:
-c :将压缩的过程产生的数据输出到屏幕上!
-d :解压缩的参数
-k :保留原始文件,而不会删除原始的文件喔!
-z :压缩的参数 (默认值,可以不加)
-v :可以显示出原文件/压缩文件的压缩比等信息;
-# :与 gzip 同样的,都是在计算压缩比的参数, -9 最佳, -1 最快!
使用方式:bzip2 [-cdkzv#] 文件名
root@localhost:/tmp# bzip2 -k test.txt
结果:
52 6月 15 11:03 test.txt.bz2
bzip2默认的压缩文件后缀为bz2,而bzip2的出现也是为了取代gzip,bzip2提供了参数来保留源文件,而且压缩比要比gzip要好。
xz:
xz [-dtlkc#] 文件名
-d :就是解压缩啊!
-t :测试压缩文件的完整性,看有没有错误
-l :列出压缩文件的相关信息
-k :保留原本的文件不删除~
-c :同样的,就是将数据由屏幕上输出的意思!
-# :同样的,也有较佳的压缩比的意思!
虽然 bzip2 已经具有很棒的压缩比,但是 xz 这个压缩比更高的软件,具体用法跟上面的两个差不多
