Linux下建立與解壓tar, tar.gz和tar.bz2檔案及壓縮率對比

來源:互聯網
上載者:User
平時工作中大多用解壓縮命令,要是遇到壓縮就現查(這不是一個好習慣),於是整理下Linux下建立與解壓zip、tar、tar.gz和tar.bz2檔案及他們之間壓縮率對比,在自己的腦袋記憶體空間有限又不經常使用的時候以便於備忘。現整理如下:

 

目前Linux下常見的壓縮檔副檔名:
 *.Z        compress程式壓縮的檔案(最早期使用),壓縮後取代源檔案;
 *.zip      一個誇平台的檔案打包程式,適用於Linux、windows和Mac OS系統;
 *.bz2      bzip2程式壓縮的檔案;
 *.gz       gzip程式壓縮的檔案;
 *.tar      tar程式打包的檔案,並沒有壓縮;
 *.tar.gz   tar程式打包的檔案,並經過gzip程式的壓縮;
 *.tar.bz2  tar程式打包的檔案,並經過bzip2程式壓縮。
 
 Tips:所謂副檔名只是大家約定的通用格式,是為了更方便的能一眼識別出是什麼壓縮類型,當然你可以打包或壓縮為任意格式的尾碼名,只要你願意。

A)*.zip格式是大家最常見的一種,它具有誇作業系統平台性,可以同時在windows、Linux和Mac Os上使用。

大家可以用zip格式壓縮那些需要共用給windows使用者的檔案。

壓縮與解壓.ZIP格式的檔案:

[root@local tmp]$ zip -r test.zip tmp 
adding: test/ (stored 0%) 
adding: test/data-file (deflated 24%) 
adding: test/r (deflated 51%)

下面是如果解壓一個zip文檔:

[root@local tmp]$ rm -rf test     #為測試解壓,先刪除目前的目錄下的tmp檔案
[root@local tmp]$ unzip  test.zip 
  Archive:  test.zip
  creating: test/
  inflating: test/data-file
  inflating: test/rB)

 壓縮與解壓*.tar*、.tar.gz、*.tar.bz2 格式的檔案及對比:
Tar是在Linux中使用得非常廣泛的文檔打包格式。它的好處就是它只消耗非常少的CPU以及時間去打包檔案,他僅僅只是一個打包工具,並不負責壓縮,壓縮是由gzip與bzip2來實現的。

因此把*.tar*、.tar.gz、*.tar.bz2 放到一起來舉例:

比如我們要把目錄/var/tmp下的test目錄打包壓縮到目前的目錄

[root@local tmp]$ tar -cvf   test.tar   test                ### 僅打包,不壓縮
[root@local tmp]$ tar -zcvf  test.tar.gz    test        ### 打包後以gzip壓縮
[root@local tmp]$ tar -jcvf  test.tar.bz2   test        ### 打包後以bzip2壓縮
[root@local tmp]$ ll     test.tar*                        ### 對比壓縮後檔案大小
-rw-r--r-- 1 Lee mock 10240 01-18 17:05 test.tar 
-rw-r--r-- 1 Lee mock   357 01-18 17:06 test.tar.bz2 
-rw-r--r-- 1 Lee mock   327 01-18 17:05 test.tar.gz

 

如何解壓縮包:

[root@local tmp]$ tar -xvf   test.tar 
[root@local tmp]$ tar -xvf   test.tar.gz
[root@local tmp]$ tar  -jxvf  test.tar.bz2

上面測試中,每次要刪除解壓後的test檔案後解壓打其他目錄,因為如果不定義解壓後目錄路徑和名字則預設解壓到目前的目錄並以把壓縮包名稱作為檔案夾名字。如果要解壓到其他目錄(如:/var/tmp/find)則如下:

[root@local tmp]$ tar  -jxvf  test.tar.bz2  -C  /var/tmp/find

 

關於tar.gz和tar.bz2壓縮率的問題:

*.tar.gz 在壓縮時不會佔用太多CPU的,而且可以得到一個非常理想的壓縮率。也會被簡寫成tgz。

*.tar.bz2網上好的資料說這種壓縮格式是壓縮率最好的、它比前面的方式要佔用更多的CPU與時間。

但是經過上面的實驗顯示發現test.tar.gz的大小竟然比test.tar.bz2的更小(這是否意味者*.tar.gz擁有更小的壓縮率)

 如下附上這次測驗的檔案包(點擊檔案名稱下載):
Test檔案夾中的2個檔案: data-file  和  r
test.tar     test.tar.gz        test.tar.bz2

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.