Linux常用命令之檔案壓縮與解壓縮命令詳解

九派Linux發表於2020-08-06

今天我們繼續為大家帶來Linux常用命令的檔案壓縮解壓命令。在Linux中,製作壓縮包或者解壓是我們日後最常見的日常檔案操作了。在Linux系統中,壓縮解壓命令其實並不難,但是裡面有一些細節是需要我們注意的。Linux壓縮格式有很多中,我們掌握好常見的幾種壓縮格式就足夠了。

1、gzip 壓縮命令解釋

  • 命令名稱:gzip
  • 命令英文:GNU zip
  • 命令所在路徑: /bin/gzip
  • 執行許可權:所有使用者
  • 命令功能:壓縮檔案
  • 語法:gzip 選項[檔案]
  • 壓縮後檔案格式:.gz

.gz格式我們比較常見,比如在系統裡面按照軟體包的時候,很多都是這個格式。

使用舉例

比如我們test目錄下有個 file3的檔案,將其壓縮成 .gz 格式:

$ gzip file3

image

可以看到,在目錄中立馬生成了一個 file3.gz 的壓縮包檔案,但是原始檔 file3 不見了。gzip 命令有幾點大家要記住:

  1. 它只能壓縮檔案,不能壓縮目錄
  2. 不保留原始檔

我們要解壓縮 .gz 的檔案,可以使用 -d 引數:

$ gzip -d file3.gz

image

解壓 .gz檔案我們還有個專門的命令: gunzip

2、gunzip 解壓.gz格式命令解釋

  • 命令名稱:gunzip
  • 命令英文:GNU unzip
  • 命令所在路徑: /bin/gunzip
  • 執行許可權:所有使用者
  • 命令功能:解壓.gz的壓縮包檔案
  • 語法:gunzip 選項[壓縮檔案]

使用舉例

接上一個例子,我們解壓 file3.gz檔案:

$ gunzip file3.gz

image

解壓出來之後,壓縮包原始檔同樣沒有保留了。

既然 gzip 不能壓縮目錄,那麼自然有另外一個命令 tar可以用來壓縮目錄。

3、tar 壓縮命令解釋

  • 命令名稱:tar
  • 命令所在路徑: /bin/tar
  • 執行許可權:所有使用者
  • 命令功能:打包目錄
  • 壓縮後檔案格式:.tar.gz
  • 語法:tar 選項[cvf] [目錄]
    • -c 產生.tar打包檔案
    • -v 顯示詳細資訊
    • -f 指定壓縮後的檔名
    • -z 打包同時壓縮

使用舉例

比如我目錄下面有個test2的目錄,現在要打包並壓縮成.tar.gz檔案:

$ tar -zcf test2.tar.gz test2
大家注意,我們要先指定檔名,再指定要打包的目錄,而且打包完成之後,原始檔還在。

image

解壓 .tar.gz 檔案

  • 語法:tar 選項[xvf] [壓縮包檔案]
    • -x 解包.tar檔案
    • -v 顯示詳細資訊
    • -f 指定解壓的檔案
    • -z 解壓縮

$ tar -zxf test2.tar.gz

4、zip 壓縮命令解釋

  • 命令名稱:zip
  • 命令所在路徑: /usr/bin/zip
  • 執行許可權:所有使用者
  • 命令功能:壓縮檔案或目錄
  • 壓縮後檔案格式:.zip
  • 語法:zip 選項[-r] [壓縮後的檔名稱] [檔案或目錄]

使用舉例

  • 比如我test/目錄下面有個 file3檔案,想壓縮成 me.zip檔案到/mnt目錄:

    $ zip /mnt/me.zip file3

image

可以看到,執行命令之後,在我的/mnt目錄生成了一個me.zip檔案,注意:zip命令也會保留原始檔。

  • 壓縮目錄:壓縮目錄和壓縮檔案差不多,只是多了一個 -r 引數。

$ zip -r test.zip test

image

提示:.zip 格式是預設windows系統和Linux系統唯一通用的格式。

5、unzip 解壓縮命令解釋

  • 命令名稱:unzip
  • 命令所在路徑: /usr/bin/unzip
  • 執行許可權:所有使用者
  • 命令功能:解壓.zip格式的壓縮檔案
  • 語法:unzip [選項] [壓縮檔名稱]

使用舉例

  • 比如把我們剛才生成的me.zip檔案解壓:

$ unzip me.zip
image

  • 把我們剛才生成的test.zip 檔案解壓:

$ unzip test.zip

image

大家可以注意到,執行命令之後,在命令列提示是否覆蓋已有的檔案,我們根據自己的需要輸入即可。有的同學就問,我不想要它提示,只要出現同名的檔案就自動覆蓋,該如何執行呢?我們加一個 -o 的引數即可:

unzip -o test.zip

6、bzip2 解壓縮命令解釋

  • 命令名稱:bzip2
  • 命令所在路徑: /usr/bin/bzip2
  • 執行許可權:所有使用者
  • 命令功能:壓縮檔案
  • 壓縮後檔案格式:.bz2
  • 語法:bzip2 [選項]-k [檔案]
    • -k 產生壓縮檔案後保留原檔案

其實大家可以理解bzip2gzip是升級版,因為他和gzip差不多,也只能壓縮檔案,不過多了一個選項-k 是否保留原檔案,而且它的壓縮比很高,因此比較適合壓縮大型的檔案。

使用舉例

比如把當前目錄下的file3檔案壓縮成 .bz2檔案,並且保留原檔案:

$ bzip2 -k file3

image

7、bunzip2 解壓縮命令解釋

  • 命令名稱:bunzip2
  • 命令所在路徑: /usr/bin/bunzip2
  • 執行許可權:所有使用者
  • 命令功能:壓縮bz2檔案
  • 語法:bunzip2 [選項]-k [壓縮檔案]
    • -k 產生壓縮檔案後保留原檔案

使用舉例

比如把當前目錄下的file3.bz2壓縮包解壓,並且保留原壓縮檔案:

$ bunzip2 -k file3.bz2

今天我們學習了在Linux系統中如何壓縮和解壓縮檔案,總體來說,我們只要掌握.gz.tar.gz.zip.bz2這四種格式壓縮和解壓縮就可以了。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章