6.1 壓縮打包介紹
6.2 gzip壓縮工具
6.3 bzip2壓縮工具
6.4 xz壓縮工具
一、壓縮打包介紹
壓縮的優點:
節約存儲空間
節約寬帶
提高上傳下載速度
常見的壓縮類型:
Windows : .rar、.zip、.7z
Linux:.zip, .gz, .bz2, .xz, .tar.gz, .tar.bz2, .tar.xz
雖然linux的文件後綴名不代表文件的類型,但是爲了方便分辨壓縮類型,還是需要規範的使用壓縮後綴。
二、gzip壓縮工具
- gzip特性
gzip不能壓縮目錄
gzip壓縮可以分爲1-9級,1級爲效率最低,9級最高。級別越高耗費的cpu越大,默認的級別爲6。
- 生成一個大文件進行測:
find /etc/ -type f -name "*conf" -exec cat {} >> /tmp/gzip/1.txt \;
- 重複以上操作幾次,查看1.txt大小和文件行數:
[root@wxy01 gzip]# du -sh
1.2M .
[root@wxy01 gzip]# wc -l 1.txt
34160 1.txt
- 使用gzip進行壓縮,然後查看文件大小:
這種方式壓縮後源文件會消失
[root@wxy01 gzip]# gzip 1.txt
[root@wxy01 gzip]# ls
1.txt.gz
[root@wxy01 gzip]# du -sh 1.txt.gz
308K 1.txt.gz
- 查看壓縮文件的信息:
[root@wxy01 gzip]# file 1.txt.gz
1.txt.gz: gzip compressed data, was "1.txt", from Unix, last modified: Mon Oct 8 10:41:24 2018
[root@wxy01 gzip]#
- 解壓
或者使用gunzip 命令也可以解壓,用法相同。
[root@wxy01 gzip]# gzip -d 1.txt.gz
[root@wxy01 gzip]# ls
1.txt
- 不刪除源文件進行壓縮
這種方式也可指定其他目錄,如想壓縮到/home下就可以:gzip -c 1.txt > /home
[root@wxy01 gzip]# gzip -c 1.txt > 1.txt.gz
[root@wxy01 gzip]# ll
total 1480
-rw-r--r-- 1 root root 1197896 Oct 8 10:41 1.txt
-rw-r--r-- 1 root root 311347 Oct 8 10:56 1.txt.gz
- 指定解壓目錄或名稱
[root@wxy01 gzip]# gzip -d -c 1.txt.gz > /home/2.txt
[root@wxy01 gzip]# ll
total 1480
-rw-r--r-- 1 root root 1197896 Oct 8 10:41 1.txt
-rw-r--r-- 1 root root 311347 Oct 8 10:56 1.txt.gz
[root@wxy01 gzip]# ll /home/2.txt
-rw-r--r-- 1 root root 1197896 Oct 8 11:00 /home/2.txt
[root@wxy01 gzip]#
- 壓縮後的文件不能查看,如果想查看可以使用zcat命令進行查看
三、bzip2壓縮工具
如果不能使用bzip2命令,需要安裝:
yum -y install bzip2
- bzip2和gzip對比:
壓縮效率更高,當然cpu耗費的也更高。
bzip2和gzip的用法相同,如:解壓都是-d 指定目錄或名稱都是-c
同樣不支持壓縮目錄
bzip2的默認壓縮級別爲:9
bzip2可以使用bzcat命令查看壓縮內容
- 同一文件使用gzip和bzip2壓縮後大小對比:
[root@wxy01 gzip]# du -sh 1.txt.bz2
100K 1.txt.bz2
[root@wxy01 gzip]# du -sh 1.txt.gz
308K 1.txt.gz
[root@wxy01 gzip]#
- 如果把壓縮文件的後綴改爲普通文本後綴, 查看的時候就會有相關提示,遇到這種問題可以用file查看文件是什麼類型,然後就可以做相關的操作
[root@wxy01 gzip]# less 1bz.txt
"1bz.txt" may be a binary file. See it anyway?
[root@wxy01 gzip]# file 1bz.txt
1bz.txt: bzip2 compressed data, block size = 900k
[root@wxy01 gzip]#
四、xz壓縮工具
xz壓縮工具和之前的gzip和bzip2用法基本相同,並不常用,通常在tar包中可以看到.tar.xz類型。
xz的壓縮效率比bzip2的更加高,消耗的cpu也更加高。
xz的壓縮使用的參數和gzip和bzip2相同。
xzcat可以查看壓縮內容