1. 程式人生 > >Linux下的常見壓縮解壓縮命令

Linux下的常見壓縮解壓縮命令

輸出 解壓 需要 壓縮 cat 一個 -a 關鍵字 原本

Linux常見壓縮解壓縮命令

常見壓縮文件擴展名

.Z         compress 程序壓縮的文件;
.zip       zip 程序壓縮的文件;
.gz        gzip 程序壓縮的文件;
.bz2       bzip2 程序壓縮的文件;
.xz        xz 程序壓縮的文件;
.tar       tar 程序打包的數據,並沒有壓縮過;
.tar.gz    tar 程序打包的文件,其中並且經過 gzip 的壓縮
.tar.bz2   tar 程序打包的文件,其中並且經過 bzip2 的壓縮
.tar.xz    tar 程序打包的文件,其中並且經過 xz 的壓縮

Linux上常見的壓縮指令就是 gzip, bzip2 以及最新的 xz ,至於 compress 已經退流行了。

gzip

目前 gzip 可以解開 compress, zip 與 gzip 等軟件所壓縮的文件。使用gzip壓縮或者解壓縮都會把原始文件刪除。

  • zgrep
    在文件中查找數據,egrep命令,不要解壓縮就可以用來搜索關鍵字。
  • gzip的語法
gzip [-cdtv#]文件名
-c  :將壓縮的數據輸出到屏幕上,可通過數據流重導向來處理;
-d  :解壓縮的參數;
-t  :可以用來檢驗一個壓縮文件的一致性~看看文件有無錯誤;
-v  :可以顯示出原文件/壓縮文件的壓縮比等信息;
-#  :# 為數字的意思,代表壓縮等級,-1 最快,但是壓縮比最差、-9 最慢,但是壓縮比最好!默認是 -6
eg:
gzip -v services
使用gzip壓縮的文件在windows系統中,可以被winrar/7zip這個軟件解壓縮。
  • 可以通過zcat/zmore/zless去讀取壓縮文件的文本內容。cat/more/less 讀取的是純文本文件。
  • .gz解壓縮
    gzip -d xxx.gz

    bzip2,bzcat/bzmore/bzless/bzgrep

    bzip2提供了比gzip更好的壓縮比,用法幾乎與gzip相同。
  • 語法
bzip2 [-cdkzv#] 文件名
bzcat 文件名.bz2
選項與參數:
-c  :將壓縮的過程產生的數據輸出到屏幕上!
-d  :解壓縮的參數
-k  :保留原始文件,而不會刪除原始的文件喔!
-z  :壓縮的參數 (默認值,可以不加)
-v  :可以顯示出原文件/壓縮文件的壓縮比等信息;
-#  :與 gzip 同樣的,都是在計算壓縮比的參數, -9 最佳, -1 最快!

xz,xzcat/xzmore/xzless/xzgrep

雖然 bzip2 已經具有很棒的壓縮比,不過顯然某些自由軟件開發者還不滿足,因此後來還推出了 xz 這個壓縮比更高的軟件!這個軟件的用法也跟 gzip/bzip2 幾乎一模一樣!

  • 語法
xz [-dtkc#] 文件名
xcat 文件名.xz
-d : 解壓縮
-t : 測試
-l : 列出壓縮文件的相關信息
-k : 保留原本文件不刪除
-c : 將數據由屏幕上輸出
-# : 1-9壓縮比選擇。
-k 參數蠻有用的。

tar

tar是打包指令,將文件夾壓縮成一個文件包。而gizp and bzip2只能將目錄中的文件一次壓縮成一個個獨立的壓縮文件,不是一個整的壓縮包。

tar可以將多個目錄或文件打包成一個大文件,同時還可以通過gzip/bzip2/xz的支持,將該文件同時進行壓縮。tar的應用很廣泛,目前windows的winrar也支持.tar.gz文件名的解壓縮。

  • tar的常見語法
tar的選項與參數非常的多,下面之涉及幾個常用的選項,更多選項可以自行man tar查詢。
tar [-z|-j|-J] [cv] [-f待創建的新文件名] filename < ==打包加壓縮
tar [-z|-j}-J] [tv] [-f 既有的tar文件名] < ==查看文件名
tar [-z|-j|-J] [xv] [-f既有的tar文件名] [-C目錄] < ==解壓縮
選項與參數:
-c : 創建打包文件,可搭配-v來察看過程中被打包的文件名(filename)
-t : 察看打包文件的內容含有哪些文件名
-x : 解打包或解壓縮的功能,可以搭配 -C (大寫) 在特定目錄解開特別留意的是,-c, -t, -x 不可同時出現一串命令行中。
-z :通過 gzip  的支持進行壓縮/解壓縮:此時文件名最好為 *.tar.gz
-j :通過 bzip2 的支持進行壓縮/解壓縮:此時文件名最好為 *.tar.bz2
-J :通過 xz    的支持進行壓縮/解壓縮:此時文件名最好為 *.tar.xz特別留意, -z, -j, -J 不可以同時出現在一串命令行中
-v :在壓縮/解壓縮的過程中,將正在處理的文件名顯示出來!
-f filename:-f 後面要立刻接要被處理的文件名!
-C 目錄 :這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項。
-p(小寫):保留備份數據的原本權限與屬性,常用於備份(-c)重要的配置文件
-P(大寫):保留絕對路徑,亦即允許備份數據中含有根目錄存在之意;
--exclude=FILE:在壓縮的過程中,不要將 FILE 打包!
  • 解開單個文件的方法
eg:
tar -jtv -f xxx.tar.bz2 | grep ‘xxxx‘
# grep是找尋關鍵字的功能!
# |配合grep找尋關鍵字。

tar的簡單命令

  • tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
  • .tar.gz and .tgz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
  • .tar.bz2
解壓:tar jxvf FileName.tar.bz2 或tar --bzip xvf Filename.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
  • tar.bz
解壓:tar jxvf FileName.tar.bz
壓縮:tar jcvf FileName.tar.bz Dirname
  • .Z
解壓:uncompress FileName.Z
壓縮:compress FileName
.tar.Z
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
  • tar命令參數詳解
eg:
tar xvfz myfile.tar.bz2
x 是解壓
v 是復雜輸出
f 是指定文件
z bz2格式
  • .zip
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
壓縮一個目錄用-r參數遞歸。eg:zip -r FileName.zip DirName
  • .lha
解壓:lha -e FileName.lha
壓縮:lha -a FileName.lha FileName
lha需要到官網上面下載。
  • .rpm
解包:rpm2cpio FileName.rpm | cipo-div
安裝:rpm2cpio file.rpm | cpio -div
  • .deb
    ```
    解包:ar p FileName.dev data.tar.gz | tar zxf-
    安裝:dpkg -i file.deb

    .rar

  • 在linux中需下載rar
    http://www.rarlab.com/download.htm
  • 解壓rar安裝包
    tar -xzvf rarlinux-x64xxx.tar.gz
  • 安裝rar
    進入rar目錄,輸入:sudo make完成安裝。
  • rar解壓命令
    rar e xxx.rar #將壓縮文件接她到當前文件目錄
    rar x xxx.rar #將壓縮文件解壓到xxx目錄下
  • rar壓縮命令
    rar a FileName.rar DirName

Linux下的常見壓縮解壓縮命令