Bzip2

bz 文件是否與 bz2 不同以及如何製作 bz 文件而不是 bz2?

  • June 22, 2017

bz 文件與 .bz2 不同嗎?我猜 bz2 是 bz 的繼承者,也許他們使用不同的壓縮算法,或者它們本質上是文件名的後綴,意思是一樣的?

bzip2(1) 顯然沒有提到 bz 和 bz2 文件之間的區別,但是它確實提到了這一點:

bunzip2(或 bzip2 -d)解壓縮所有指定的文件。不是由 bzip2 創建的文件將被檢測並忽略,並發出警告。

bzip2 嘗試從壓縮文件的文件名中猜測解壓縮文件的文件名,如下所示:

    filename.bz2    becomes   filename
      filename.bz     becomes   filename
      filename.tbz2   becomes   filename.tar
      filename.tbz    becomes   filename.tar
      anyothername    becomes   anyothername.out
  • bz 文件與 bz2 文件是否不同,如果不同,如何製作 bz 文件?

它們是不同的。bzip2是 的重新編寫的版本bzip,經過重新設計以避免與原始版本存在潛在的專利問題bzip。舊首頁有詳細資訊:

bzip2 是 0.21 的重寫和重新設計的版本。它表面上看起來非常相似,但幾乎完全重寫了(多次:-)。重要的區別是:

  • 免專利!(我希望;見上面的聲明)。bzip-0.21 使用算術編碼;bzip2 使用霍夫曼編碼,從專利的角度來看,這通常被認為是沒有問題的。這兩個程序都基於 Burrows-Wheeler 變換,但據我所知,這也沒有獲得專利。
  • 更快,尤其是在減壓時。bzip2 的解壓速度比 0.21 快 50% 以上,主要是因為使用了 Huffman 編碼。我還提高了壓縮速度,雖然沒有那麼多——也許它的壓縮速度比 0.21 快 30%。
  • 從媒體錯誤中恢復。兩個程序都以塊為單位壓縮數據,預設情況下為 900k 長。使用 bzip2,每個塊都完全獨立處理,帶有自己的校驗和,並由 48 位序列分隔。因此,如果您有損壞的壓縮文件,bzip2 可以提取壓縮塊,檢測哪些未損壞,然後解壓縮。
  • 測試模式。您可以測試壓縮文件的完整性,而無需解壓縮它們。我應該把它放在 0.21 中,真的,但是太懶了(+ 到我發布它的時候被黑客燒壞了)。
  • 更好地處理非常重複的文件。這樣的文件對於任何塊排序壓縮器來說都是最壞的情況。對於此類文件,bzip2 的執行速度比 0.21 快大約十倍。
  • 支持更小的機器。bzip2 可以解壓縮它創建的任何 2300k 文件,這意味著您可以在 4-meg 機器上解壓縮文件。與 0.21 相比,壓縮期間的峰值記憶體使用量也減少了約 900k,至約 6400k。
  • 更好的標誌處理。特別是,支持長標誌(–like –this),使其更易於使用。
  • 0.21 列印的一行啟動資訊,不見了。這是 0.21 最受抱怨的功能。如今,它甚至讓我感到困擾。

要製作bz文件,您需要獲取舊的bzip壓縮器並使用它。沒有真正的理由這樣做…

引用自:https://unix.stackexchange.com/questions/372743