GNU / Linux 各種壓縮與解壓縮指令



.tar (僅打包,無壓縮)

  • 套件名稱:tar
  • 打包:
    [ jonny@linux ~ ]
    $ tar cvf FileName.tar DirName
  • 解包:
    [ jonny@linux ~ ]
    $ tar xvf FileName.tar


.gz

  • 套件名稱:gzip
  • 壓縮
    [ jonny@linux ~ ]
    $ gzip FileName
  • 解壓縮 1:
    [ jonny@linux ~ ]
    $ gunzip FileName.gz
  • 解壓縮 2:
    [ jonny@linux ~ ]
    $ gzip -d FileName.gz


.tar.gz

  • 套件名稱:gzip
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar zcvf FileName.tar.gz DirName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar zxvf FileName.tar.gz


.bz

  • 壓縮:unkown。
  • 解壓縮 1:
    [ jonny@linux ~ ]
    $ bzip2 -d FileName.bz
  • 解壓縮 2:
    [ jonny@linux ~ ]
    $ bunzip2 FileName.bz


.tar.bz

  • 壓縮:unkown。
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar jxvf FileName.tar.bz


.bz2

  • 套件名稱:bzip2
  • 壓縮:
    [ jonny@linux ~ ]
    $ bzip2 -z FileName
  • 解壓縮 1:
    [ jonny@linux ~ ]
    $ bzip2 -d FileName.bz2
  • 解壓縮 2:
    [ jonny@linux ~ ]
    $ bunzip2 FileName.bz2


.tar.bz2

  • 套件名稱:bzip2
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar jcvf FileName.tar.bz2 DirName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar jxvf FileName.tar.bz2

.tar.bz2 (parallel)

  • 套件名稱:lbzip2
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar -I lbzip2 -cvf FileName.tar.bz2 DirName


.xz

  • 套件名稱:xz-utils
  • 壓縮:
    [ jonny@linux ~ ]
    $ xz -z FileName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ xz -d FileName.xz


.tar.xz

  • 套件名稱:xz-utils
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar Jcvf FileName.tar.xz DirName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar Jxvf FileName.tar.xz


.Z

  • 壓縮:
    [ jonny@linux ~ ]
    $ compress FileName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ uncompress FileName.Z

.tar.Z

  • 壓縮:
    [ jonny@linux ~ ]
    $ tar Zcvf FileName.tar.Z DirName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar Zxvf FileName.tar.Z

.tgz

  • 套件名稱:gzip
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar zcvf FileName.tgz FileName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar zxvf FileName.tgz

.tar.tgz

  • 套件名稱:gzip
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar zcvf FileName.tar.tgz FileName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar zxvf FileName.tar.tgz

.7z

  • 套件名稱:p7zip-full
  • 壓縮:
    [ jonny@linux ~ ]
    $ 7z a FileName.7z FileName
  • 使用密碼 (PASSWORD) 壓縮:
    [ jonny@linux ~ ]
    $ 7z a FileName.7z FileName -pPASSWORD
  • 解壓縮:
    [ jonny@linux ~ ]
    $ 7z x FileName.7z

.zip

  • 套件名稱:zip
  • 壓縮:
    [ jonny@linux ~ ]
    $ zip -r FileName.zip DirName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ unzip FileName.zip

.rar

  • 套件名稱:rar, unrar
  • 壓縮:
    [ jonny@linux ~ ]
    $ rar a FileName.rar DirName
  • 解壓縮 1:
    [ jonny@linux ~ ]
    $ rar e FileName.rar
  • 解壓縮 2:
    [ jonny@linux ~ ]
    $ unrar e FileName.rar
  • 解壓縮 3:在指定目錄內解壓縮。
    [ jonny@linux ~ ]
    $ rar x FileName.rar DirName

.lha

  • 套件名稱:lha
  • 壓縮:
    [ jonny@linux ~ ]
    $ lha -a FileName.lha FileName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ lha -e FileName.lha

.zst

  • 套件名稱:zstd
  • 壓縮:
    [ jonny@linux ~ ]
    $ zst FileName
  • 解壓縮:
    [ jonny@linux ~ ]
    $ zstd -d FileName.zst

.tar.zst

  • 套件名稱:zstd
  • 壓縮:
    [ jonny@linux ~ ]
    $ tar -I zstd -cvf FileName.tar.zst DirName
    $ tar -I zstd -cvf FileName.tar.zst File1 File2
  • 解壓縮:
    [ jonny@linux ~ ]
    $ tar -I zstd -xvf FileName.tar.zst

延伸閱讀:
Zeroplex 生活隨筆: lbzip2 - parallel bzip2
ubuntu bzip 多核心壓縮 - 老伯筆記
XZ Utils
Linux 安裝與使用 Zstd 快速壓縮、解壓縮工具教學 | G. T. Wang

資料來源:
EvoTalk - Unix下常用壓縮格式的壓縮與解壓縮縮方法

留言

  1. rar解壓縮 和 壓縮的寫反了喔~

    回覆刪除
  2. 謝謝指教,凍仁還沒有在終端機底下打這指令的說XD

    在 Ubuntu 有圖形話就不會想用終端機說~~~哈XD

    回覆刪除
  3. 補上個快速選單,這樣以後在查找壓縮指令時就可以少滾幾下了!

    回覆刪除
  4. 這篇看了n次 真方便 謝謝博主

    回覆刪除
  5. 建議zip加上-r,如下
    zip -r FileName.zip DirName

    其他格式待確認

    回覆刪除
    回覆
    1. 已修改完畢。若未加上 `-r` 的參數,將無法對底下的目錄進行遞迴壓縮。

      ```
      $ man zip
      ...

      -r
      --recurse-paths

      Travel the directory structure recursively;
      ```

      刪除
  6. 以前看到没有保存…
    终于找到了!真的很实用

    回覆刪除
    回覆
    1. 謝謝支持,如果有缺哪個壓縮的相關指令,還請告知在下。這畢竟是 2008 年寫下的資訊,可能會有些過時。😉

      刪除
  7. 感謝,最近工作需要用上,真的非常有幫助

    回覆刪除
  8. 感謝~超有幫助!

    回覆刪除
  9. 造福人群
    受我一拜

    回覆刪除
  10. 看到同事近來一直在使用 zstd,故小小補了一下 zstd 的壓縮、解壓縮的指令。

    * Zstandard | 維基百科 - https://zh.wikipedia.org/wiki/Zstandard
    * Linux 安裝與使用 Zstd 快速壓縮、解壓縮工具教學 | G. T. Wang - https://blog.gtwang.org/linux/linux-zstd-fast-data-compression-tutorial/

    回覆刪除
    回覆
    1. 非常實用的文章,非常感謝。

      刪除
  11. 本網頁是我從學Linux之時就經常過來這裡,已經好幾年了吧,看的頻率比鳥哥、CSDN還高

    沒辦法 Linux壓縮包種類太多
    換一種壓縮種類就要換命令...

    不像是Win裡面無腦右鍵解壓
    (假如Linux裡面有這種東東請告訴我~ 不然我只能繼續來拜訪)

    回覆刪除
    回覆
    1. Hi @Retsu:

      謝謝支持,凍仁近日因 COVID19 疫情爆發的關係,回鍋玩鋼彈模型去,就比較少寫 Blog 。

      如果是 Ubuntu Desktop (桌面版) 的話,早在數年前 (可能超過 10 年),就有支援右鍵解壓縮的功能,只不過敝人平日還是會以指令為主。

      Reference:

      * https://itsfoss.com/wp-content/uploads/2019/10/unzip-files-ubuntu.jpg
      * https://itsfoss.com/unzip-linux/

      Enjoy it.

      刪除
  12. 第不知道幾百次來這個網頁了 感謝作者

    回覆刪除
  13. 十分感謝

    回覆刪除
  14. 記不得指令,但一定記得這個網頁...

    回覆刪除
    回覆
    1. 你各位也太誇張了,常打就記得了。

      (謎之音:誰像你每天的工作就是泡在 shell 裡面 … )

      刪除

張貼留言

喜歡這篇文章嗎?歡迎在底下留言讓凍仁知道。😉

Popular Articles

sudo 指令使用說明