tar,tar.gz,zip,tar.bz2壓縮演算法比較,tar.bz2壓縮率最大最耗cpu
壓縮、解壓縮是日常工作中常用的兩個操作,對於 Windows 平臺而言,最常用的格式是 zip 和 rar,國內大多數是用 rar,國外大多數是用 zip。
而對於類 Unix 平臺而言,常用的格式是 tar 和 tar.gz,zip 比較少一些,rar 則幾乎沒有。
ZIP 格式
zip 格式是開放且免費的,所以廣泛使用在 Windows、Linux、MacOS 平臺,要說 zip 有什麼缺點的話,就是它的壓縮率並不是很高,不如 rar及 tar.gz 等格式。
將檔案或資料夾壓縮為一個 zip 文件的命令如下:
zip -r archive_name.zip file_to_compress zip -r archive_name.zip directory_to_compress/
解壓 zip 文件的命令如下:
unzip archive_name.zip
TAR 格式
嚴格的說,tar 只是一種打包格式,並不對檔案進行壓縮,主要是為了便於檔案的管理,所以打包後的文件大小一般遠遠大於 zip 和 tar.gz,但這種格式也有很明顯的優點,例如打包速度非常快,打包時 CPU 佔用率也很低,因為不需要壓縮嘛。
將檔案或資料夾打包為 tar 文件的命令如下:
tar -cvf archive_name.tar file_to_compress tar -cvf archive_name.tar directory_to_compress
解包一個 tar 文件的命令如下:
tar -xvf archive_name.tar
TAR.GZ
tar.gz 可以說是對於 tar 的一個補充,它會對檔案進行壓縮,且壓縮率略優於 zip,而對於 CPU 的佔用率卻不怎麼高。Linux 平臺下的大多數開源軟體或原始碼都是採用這種格式。
將檔案或資料夾打包壓縮為 tar.gz 文件的命令如下:
tar -zcvf archive_name.tar.gz file_to_compress tar -zcvf archive_name.tar.gz directory_to_compress
解壓一個 tar.gz 文件的命令如下:
tar -zxvf archive_name.tar.gz
TAR.BZ2
相比以上幾種格式,tar.gz2 擁有最高的壓縮率,但是壓縮的時候所需要的時間也最長,CPU 佔用率也最高。將檔案或資料夾壓縮為 tar.bz2 的命令如下:
tar -jcvf archive_name.tar.bz2 file_to_compress tar -jcvf archive_name.tar.bz2 directory_to_compress
解壓一個 tar.bz2 檔案的命令是:
tar -jxvf archive_name.tar.bz2
我將最新版的 WordPress 3.5.1 版本的資料夾分別用以上幾種格式壓縮後的檔案大小分別為:
[[email protected] files]# ls -l total 27764 drwxr-xr-x 5 root root 4096 Jan 24 20:53 wordpress -rw-r--r-- 1 root root 13250560 Apr 21 02:23 wordpress.tar -rw-r--r-- 1 root root 4628845 Apr 21 02:27 wordpress.tar.bz2 -rw-r--r-- 1 root root 5012223 Apr 21 02:18 wordpress.tar.gz -rw-r--r-- 1 root root 5468888 Apr 21 02:18 wordpress.zip
可以說以上幾種型別的格式各有優缺點,你需要在壓縮率、壓縮和解壓耗時及 CPU 佔用率方面找到一個平衡點。我在此之前一直使用 zip 格式,因為它看起來命令簡單容易記住,但是從今往後起可能會用 tar.gz 多一些。
Posted on 2013-04-21