1. 程式人生 > >linux下檔案和目錄的壓縮和解壓(gzip、bzip2、tar)

linux下檔案和目錄的壓縮和解壓(gzip、bzip2、tar)

檔案的壓縮和解壓:

注意:區分Linux系統中檔案和目錄的區別

首先說一下打包和壓縮的概念:

打包是指將一大堆檔案或目錄什麼的變成一個總的檔案;
壓縮則是將一個大的檔案通過一些壓縮演算法變成一個小檔案。

常見的壓縮副檔名:

副檔名 解釋
*.gz gzip程式壓縮的檔案
*.bz2 bzip2程式壓縮的檔案
*.tar tar程式打包的資料,並沒有經過壓縮
*.tar.gz tar程式打包的檔案,經過gzip的壓縮
*.tar.bz2 tar程式打包的檔案,經過bzip2的壓縮

Linux常見的壓縮和解壓檔案的命令:(注意是檔案)
gzip 壓縮用法:

gzip  [被壓縮檔案]   #此種壓縮不保留原始檔 

gzip -c [被壓縮檔案] > [為壓縮檔案的新檔名.gz]  #此種解壓保留原始檔,新副檔名只是為了讓我們更好地去檢視檔案,新檔案的名字不作要求

gzip解壓使用方法

gzip -d [壓縮檔案.gz]  #不保留原始檔
gunzip [壓縮檔案.gz]
#不保留原始檔 gzip -cd [壓縮檔案.gz] > [新檔名稱] #保留源壓縮檔案,並解壓為新檔名稱的檔案

檢視gzip壓縮過的原始檔內容:

zcat [壓縮檔案.gz]

bzip2壓縮方法:

bzip2  [被壓縮檔案]   #此種壓縮不保留原始檔 

bzip2 -c [被壓縮檔案] > [為壓縮檔案的新檔名.bz2]  #此種解壓保留原始檔,新副檔名只是為了讓我們更好地去檢視檔案,新檔案的名字不作要求

檢視bzip2壓縮過的檔案原始檔內容:

bzcat [壓縮檔案.bz2]

bzip2解壓方法:

bzip2 -d [壓縮檔案.bz2]
#不保留原始檔 bunzip2 [壓縮檔案.bz2] #不保留原始檔 bzip2 -cd [壓縮檔案.bz2] > [新檔名稱] #保留源壓縮檔案,並解壓為新檔名稱的檔案

========================================================
上述方法只能壓縮檔案,而不能打包和壓縮目錄,所以現在使用工具——tar

tar可以用來壓縮目錄與檔案:

tar使用方法:

tar [主選項+輔選項] [檔案1] [檔案2] [目錄1] [目錄2] [……]

主選項:(每次只能使用一個)

選項 功能
c 建立一個新歸檔檔案
x 從歸檔檔案中提取檔案出來
t 列出歸檔檔案的內容

輔選項:(每次可以使用多個)

選項 功能
z 通過gzip的支援進行壓縮/解壓,一般格式為*.tar.gz
j 通過bzip2的支援進行壓縮/解壓,一般格式為*.tar.bz2
v 歸檔或解包過程中顯示被打包的檔案
C 只在解壓時,若要在特定目錄解壓,可以使用
f 輸出結果到檔案,必須選該項

tar壓縮檔案和目錄:(常用的方法)

tar cjvf [新檔名稱] [被壓縮檔案1] [被壓縮檔案2] [被壓縮目錄1] [被壓縮目錄2] [……]
tar czvf [新檔名稱] [被壓縮檔案1] [被壓縮檔案2] [被壓縮目錄1] [被壓縮目錄2] [……] 

tar解壓方法:

tar xvf [被壓縮檔案]  #主選項x會自動識別歸檔檔案壓縮的格式,並進行解壓

tar解壓,並解壓到指定的路徑:

tar xjvf [被壓縮檔案] -C [指定路徑]

tar檢視已壓縮檔案:

tar tf [被壓縮檔案]