作者 | Himanshu Arora
譯者 | erialin ? 共計翻譯:1 篇 貢獻時間:21 天
我們已經討論過 Linux 下 gzip 命令的用法[1]。對於初學者來說,gzip
工具主要用於壓縮或者展開檔案。解壓時,在 gzip
命令後新增 -d
選項即可,使用示例如下:
gzip -d [compressed-file-name]
不過,在解壓或擴充套件 gzip 建立的壓縮檔案時,有另一款完全不同的工具可供使用。談及的這款工具就是 gunzip
。在本文中,我們會使用一些簡單、易於理解的例子來解釋 gunzip
命令的用法。文中所有示例及指南都在 Ubuntu 16.04 環境下測試。
Linux gunzip 命令
我們現在知道壓縮檔案可以用 gzip -d
或 gunzip
命令解壓。基本的 gunzip
語法為:
gunzip [compressed-file-name]
以下的 Q&A; 例子將更清晰地展示 gunzip
工具如何工作:
Q1. 如何使用 gunzip 解壓壓縮檔案?
解壓命令非常簡單,僅僅需要將壓縮檔案名稱作為引數傳遞到 gunzip
命令後。
gunzip [archive-name]
比如:
gunzip file1.gz
如何使用 gunzip 解壓壓縮檔案?
Q2. 如何讓 gunzip 不刪除原始壓縮檔案?
正如你已註意到的那樣,gunzip
命令解壓後會刪除原始壓縮檔案。如果你想保留原始壓縮檔案,可以使用 -c
選項。
gunzip -c [archive-name] > [outputfile-name]
比如:
gunzip -c file1.gz > file1
如何讓 gunzip 不刪除原始壓縮檔案?
使用這種方式,原壓縮檔案不會被刪除。
Q3. 如何用 gunzip 解壓檔案到其他路徑?
在 Q&A; 中我們已經討論過 -c
選項的用法。 使用 gunzip 解壓檔案到工作目錄外的其他路徑,僅需要在重定向運運算元後新增標的目錄的絕對路徑即可。
gunzip -c [compressed-file] > [/complete/path/to/dest/dir/filename]
示例如下:
gunzip -c file1.gz > /home/himanshu/file1
更多資訊
以下從 gzip/gunzip 的 man 頁中摘錄的細節,對於想瞭解更多的人會有所助益。
gunzip
在命令列接受一系列的檔案,並且將每個檔案內容以正確的魔法數開始,且字尾名為.gz
、-gz
、.z
、-z
或_z
(忽略大小寫)的壓縮檔案,用未壓縮的檔案替換它,並刪除其原副檔名。gunzip
也可識別一些特殊副檔名的壓縮檔案,如.tgz
和.taz
分別是.tar.gz
和.tar.Z
的縮寫。在壓縮時,gzip
在必要情況下使用.tgz
作為副檔名,而不是隻擷取掉.tar
字尾。
gunzip
目前可以解壓gzip
、zip
、compress
、compress -H
(pack
)產生的檔案。gunzip
自動檢測輸入檔案格式。在使用前兩種壓縮格式時,gunzip
會檢驗 32 位迴圈冗餘校驗碼(CRC)。對於 pack 包,gunzip
會檢驗壓縮長度。標準壓縮格式在設計上不允許相容性檢測。不過gunzip
有時可以檢測出壞的.Z
檔案。如果你解壓.Z
檔案時出錯,不要因為標準解壓沒報錯就認為.Z
檔案一定是正確的。這通常意味著標準解壓過程不檢測它的輸入,而是直接產生一個錯誤的輸出。SCO 的compress -H
格式(lzh 壓縮方法)不包括 CRC 校驗碼,但也允許一些相容性檢查。
結語
到目前為止提到的 gunzip
基本用法,並不需要過多的學習曲線。我們已包含了一個初學者開始使用它所必須瞭解的幾乎全部知識。想要瞭解更多的用法,去看 man 頁面[2] 吧。
via: https://www.howtoforge.com/linux-gunzip-command/
作者:Himanshu Arora[4] 譯者:erialin 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出