compress: 壓縮檔案.


compress 是使用可調適的 Lempel-Ziv 編碼,縮小指定檔案的 大小. 只要執行這個命令, 該檔案的名稱則會變成帶有. Z 的 延伸檔名, 但是該檔案的所有權, 模態, 存取和修改時間都維 持不變. 如果沒有指定檔案的話, 就把標準輸入壓縮到標準輸 出.

壓縮過的檔案可以用 compress -d, uncompresszcat這三個命 令, 回復到原來的形式.

壓縮所得的數量取決於輸入大小, 每一個編碼極限位元 (maxb its ) 的最大值, 以及共用子字串的分布. 通常原始碼或者英 文的本文可以縮小 50-60%. 一般而言, compress 優於 Huff- man 編碼 (pack 所使用)和可調適的 Huffman 編碼 (compact 所使用) 的效果, 同時計算時間也較少.

可用的選擇項如下:

  1. -d: decompress 的名稱. compress -d 和 uncompress 的作用相同.
  2. -v: 列印出每個壓縮檔案的縮小比例.
  3. -c: 強迫 compress 寫到標準輸出; 所有檔案都不會改變.
  4. -V: 在標準錯誤上, 列印目前的版本, 並且編譯選擇 項.
compress 使用改良的 Lempel-Ziv 演算法. 此演算法刊登在 " A Technique for High Performance Data Compression, " Terry A. Welch, IEEE Computer, vol. 17, no. 6 ( June 1 984 ), pp. 8-19.

命令:

	   compress -v zenith
壓縮檔案 zenith, 不久後螢幕上會出現下面的訊息:
	   zenith: Compression: 23.55%    replaced with zenith.Z
表示節省了 23.55% 的空間. 或者, 螢幕上會出現另一種訊息 :
	   zenith:  Compression:  -12.04%      file unchanged
表示必須增加 12.04% 的現有空間, 才能 compress 這個檔案 . 要回復壓縮過的檔案時, 鍵入:
	   compress -d zenith.Z
執行之後, 就會回復成原先未壓縮的檔案形式和名稱.