Linux解壓縮命令

壓縮文件是一種在計算機和服務器之間傳輸它們的簡單而有效的方式,它使用的帶寬遠遠低於發送全尺寸文件的帶寬。 當你在Linux中收到一個壓縮檔案時,解壓縮它同樣簡單。 以下是在Linux命令行中使用unzip命令的幾種方法。

將單個壓縮文件解壓縮到當前文件夾中

解壓縮文件的基本語法是:

解壓縮文件名

舉個例子,假設你已經把Ugly Kid Joe樂隊的一張名為“Menace To Sobriety”的專輯壓縮成一個名為“威脅清醒”的zip文件。

要將此文件解壓縮到當前文件夾中,只需運行以下命令:

解壓縮“威脅到清醒”

解壓縮多個文件

man命令使您可以使用以下語法一次解壓縮多個文件:

解壓縮文件名1文件名2文件名3

假設你分別壓縮了名為“垃圾箱”,“嘿Stoopid”和“Dragontown”的Alice Cooper專輯的三個文件。 要解壓這些文件,您可以嘗試輸入以下內容:

解壓縮“Trash.zip”“Dragontown.zip”“嘿Stoopid.zip”

然後,你會得到這個錯誤:

存檔:Trash.zip警告:文件名不匹配:Dragontown.zip <

假設這三個文件位於同一文件夾中,更好的方法是使用以下命令:

解壓縮'* .zip'

不過要小心:這個命令是不加區分的,並且會解壓當前文件夾中的每個zip文件。

解壓縮文件但排除某些其他文件

如果您有一個zip文件,並且您想要提取除一個以外的所有文件,請使用-x開關,如下所示:

解壓縮filename.zip -x filetoexclude.zip

繼續我們的例子,A​​lice Cooper的專輯“Trash”有一首名為“Bed Of Nails”的歌曲。 要提取除“指甲之床”之外的所有歌曲,請使用以下語法:

解壓縮Trash.zip -x“Bed Of Nails.mp3”

將一個Zip文件解壓到不同的目錄

如果要將zip文件的內容放在與當前不同的目錄中,請使用-d開關,如下所示:

解壓縮filename.zip -d路徑/到/提取/到

例如,要將“Trash.zip”文件解壓縮到“/ home / music / Alice Cooper / Trash”,您可以使用以下語法:

解壓縮Trash.zip -d / home / music / Alice Cooper / Trash

如何顯示壓縮的Zip文件的內容

要列出壓縮文件的內容,請使用-l開關:

unzip -l filename.zip

要查看專輯“Trash.zip”中的所有歌曲,請使用以下內容:

解壓縮-l Trash.zip

返回的信息包括:

如何測試Zip文件是否有效

要在解壓縮之前測試zip文件是否正常,請使用-t開關:

unzip -t filename.zip

例如,要測試“Trash.zip”是否有效,可以運行以下命令:

解壓縮-t Trash.zip

每個文件將被列出,並且“OK”應該出現在它旁邊。 在輸出的底部,應該出現一條消息,指出“在...的壓縮數據中未檢測到錯誤”

顯示關於壓縮文件的詳細信息

如果您需要更詳細的信息,請使用-v開關,該開關輸出更詳細的信息:

語法如下:

解壓縮-v文件名

例如:

解壓縮-v Trash.zip

詳細輸出包含以下信息:

在不創建目錄的情況下將Zip文件解壓縮到當前目錄

如果您在創建zip文件時添加了文件夾,則標準的unzip命令將在解壓縮後重新創建文件夾結構。

例如,如果使用以下結構提取名為“filename1.zip”的zip文件,則在解壓縮文件夾時將重新創建這些文件夾:

如果您希望所有“.txt”文件解壓縮到當前文件夾中而不重新創建文件夾,則可以使用-j開關,如下所示:

unzip -j filename.zip

文件已存在時解壓縮文件而不提示

想像一下你有一個你已經解壓縮的zip文件,並且你已經開始處理你已經提取的文件。

如果您想要解壓縮另一個文件,並且zip文件包含目標文件夾中已存在的文件,則在系統覆蓋文件之前會顯示一條警告。 這是可以的,但如果你正在提取一個包含1000個文件的文件,你不希望每次都提示。

因此,如果您不想覆蓋現有文件,請使用-n開關:

unzip -n filename.zip

如果您不關心文件是否已經存在,並且您始終想要在不提示的情況下覆蓋解壓文件,請使用-o開關:

unzip -o filename.zip

提取受密碼保護的Zip文件

如果您需要解壓縮需要密碼才能訪問的文件,請使用-P開關,然後輸入密碼:

解壓縮-P密碼filename.zip

例如,要使用密碼“kittens123”解壓縮名為“cats.zip”的文件,請使用以下命令:

unzip -P kittens123 filename.zip

解壓縮文件而不顯示任何輸出

默認情況下,“unzip”命令會列出正在進行的所有操作,包括列出存檔中的每個文件。 您可以通過使用-q開關來抑制此輸出:

解壓縮-q filename.zip

這將解壓縮文件名而不提供任何輸出,並在完成時返回到光標。

Linux提供了許多其他交換機。 訪問Linux手冊頁以了解更多信息。