首頁 > 軟體

如何在 Linux 中使用 unzip 解壓縮檔案

2020-06-16 16:33:30

ZIP 是最廣泛使用的歸檔檔案格式,支援無失真資料壓縮。 ZIP 檔案是包含一個或多個壓縮檔案或目錄的資料容器。

在本教學中,我們將向您展示如何使用 unzip 命令通過命令列解壓縮 Linux 系統中的檔案。

什麼是 unzip ?

Unzip 是一個實用程式,可幫助您列出,測試和提取壓縮的 ZIP 存檔。

安裝解壓縮

預設情況下,大多數 Linux 發行版中都沒有安裝 Unzip ,但您可以使用發行版的軟體包管理器輕鬆安裝它。

Ubuntu 和 Debian 上安裝解壓縮

sudo apt install unzip

CentOSFedora 上安裝解壓縮

sudo yum install unzip

如何解壓縮 ZIP 檔案

在沒有任何選項的情況下使用它是最簡單的形式,該 unzip 命令將從指定的 ZIP 存檔中提取所有檔案到當前目錄。

unzip filename.zip

為了能夠在特定目錄中提取 ZIP 存檔,使用者需要對該目錄具有寫入許可權。

ZIP 檔案不支援 Linux 樣式的所有權資訊,並且所有提取的檔案將由執行該命令的使用者擁有。

例如,假設您下載了 Wordpress 安裝 ZIP檔案(https://wordpress.org/latest.zip)。要將此檔案解壓縮到當前目錄,只需執行以下命令:

unzip latest.zip

如何抑制 unzip 命令的輸出

預設情況下, unzip 命令列印它提取的所有檔案的名稱以及提取完成時的摘要。

使用 -q 選項可禁止列印這些訊息。

unzip -q filename.zip

如何將 ZIP 檔案解壓縮到其他目錄

要將 ZIP 檔案解壓縮到與當前目錄不同的目錄中,請使用該 -d 選項。

unzip filename.zip -d /path/to/directory

例如,要將 Wordpress 存檔解壓縮 latest.zip 到 /var/www/ 目錄,您將使用以下命令:

sudo unzip latest.zip -d /var/www

在上面的命令中我們使用了 sudo ,因為在大多數情況下,我們登入的使用者沒有對 /var/www 目錄的寫許可權。當使用 sudo 解壓縮 ZIP 檔案時,提取的檔案和目錄將由使用者 root 擁有。

如何解壓縮受密碼保護的 ZIP 檔案

要解壓縮受密碼保護的檔案,請使用 -P 選項後跟密碼。

unzip -P PasswOrd filename.zip

解壓縮 ZIP 檔案時如何排除檔案

如果要從 ZIP 存檔中提取除一個檔案以外的所有檔案,請使用該 -x 選項。

unzip filename.zip -x file-to-exclude

在以下範例中,我們將從 ZIP 存檔中提取除 .git 目錄之外的所有檔案和目錄:

unzip filename.zip -x "*.git/*"

使用解壓縮時如何覆蓋現有檔案

假設您已經解壓縮了 ZIP 檔案,當您再次執行相同的命令。

unzip latest.zip

預設情況下, Unzip 會詢問您是要覆蓋當前檔案,覆蓋所有檔案,跳過當前檔案的提取,跳過提取所有檔案,還是重新命名當前檔案。

Archive:  latest.zip
replace wordpress/xmlrpc.php? [y]es, [n]o, [A]ll, [N]one, [r]ename:

如果要在不提示的情況下覆蓋現有檔案,請使用 -o 選項:

unzip -o filename.zip

請謹慎使用此選項。檔案將被覆蓋,如果您對檔案進行了任何更改,則更改將丟失。

如何在不覆蓋現有檔案的情況下解壓縮 ZIP 檔案

假設您已經解壓縮了一個 ZIP 檔案,並且您對某些檔案進行了更改,但是您不小心刪除了一些檔案。您希望保留更改並從 ZIP 存檔中還原已刪除的檔案。

在這種情況下,您要使用 -n 選項來跳過已存在的檔案的提取。

unzip -n filename.zip

如何解壓縮多個 ZIP 檔案

如果當前工作目錄中有多個 ZIP 檔案,則只需使用一個命令即可解壓縮所有檔案:

unzip '*.zip'

注意 *.zip 周圍的單引號。如果您忘記參照引數, shell 將展開萬用字元,您將收到錯誤。

如何列出 Zip 檔案的內容

要列出 ZIP 檔案的內容,請使用 -l 選項。

unzip -l filename.zip

在我們的範例中,我們通過執行以下命令列出所有 WordPress 安裝檔案:

unzip -l latest.zip

輸出將如下所示:

Archive:  latest.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2018-08-02 22:39   wordpress/
     3065  2016-08-31 18:31   wordpress/xmlrpc.php
      364  2015-12-19 12:20   wordpress/wp-blog-header.php
     7415  2018-03-18 17:13   wordpress/readme.html
...
...
    21323  2018-03-09 01:15   wordpress/wp-admin/themes.php
     8353  2017-09-10 18:20   wordpress/wp-admin/options-reading.php
     4620  2017-10-24 00:12   wordpress/wp-trackback.php
     1889  2018-05-03 00:11   wordpress/wp-comments-post.php
---------                     -------
 27271400                     1648 files

結論

您已經學習了如何解壓縮 ZIP 檔案和最常見的解壓縮選項。要在 Linux 系統上建立 ZIP 存檔,您需要使用 zip 命令。


IT145.com E-mail:sddin#qq.com