linux常用壓縮與解壓命令

2021-06-29 14:29:48 字數 3638 閱讀 1816

1.常見壓縮檔案格式

*.tar                tar 技術壓縮的包

*.tar.gz           tar 打包,但支援gzip技術解壓縮

*.tar.bz2         tar打包,但支援 bzip2 技術解壓縮

*.gz                 gzip 技術打包

*.bz2              bzip2技術打包

*.z                  compress技術打包

linux 不會根據檔案字尾來判定檔案型別,不像win平台:exe就代表可執行檔案,而linux下的可執行檔案只要求檔案有 x 許可權

所以壓縮檔案也一樣,具備上述這些格式的檔案,也不一定是壓縮檔案,但適當的檔案字尾是有必要的,簡化我們的人的認知

注意:compress已經不再流行,被gzip取而代之。現在bzip2因為具備比gzip更優秀的壓縮比,所以bzip2也是主流的解壓縮技術

但是gzip和bzip2只適合對單個檔案壓縮,所以對目錄或者多個檔案打包,推薦使用 tar 打包

2.打包命令

********************* gzip 壓縮與解壓 **********************************

1.壓縮

使用 gzip 命令壓縮,預設情況下:壓縮後原始檔就不存在了

gzip man.config  會將當前目錄man.config檔案壓縮成 man.config.gz 檔案

gzip -v man.config 除了壓縮,還會顯示壓縮比例等資訊

gzip /etc/man.config 則將etc目錄下man.config檔案壓縮

gzip * 則是將當前目錄所有檔案壓縮

gzip a.txt b.txt 則是將當前目錄下a、b這兩個文字文件壓縮

如果要保留原檔案,則使用 -c 引數,比如

gzip -c man.config>man.config.gz  這樣原檔案會保留

gzip -c man.config>a.config.gz 這樣原檔案保留

注意自己命名壓縮包名字時,可以不用 a.config.gz 也可以直接是 a.gz 或者更簡單直接叫做 a

gzip -c man.config>a.gz  這樣生成的壓縮包叫做 a.gz

gzip -c man.config>a 這樣生成的壓縮包叫做 a ,雖然沒有檔案字尾,但也是壓縮檔案

2.解壓

使用 gzip -d  解壓,預設情況下,原gz檔案被解壓後也不存在了

gzip -d a.gz

gzip -d *

如果壓縮包名字本來就是 a ,那就是這樣  gzip -d a 直接壓縮

如果你想保留原來的gz壓縮包,解壓後的檔案重新生成乙個,也使用引數 -c  比如

gzip -d -c a.config.gz > man.config  這樣a.config.gz解壓後變成了 man.config 檔案

總結:gzip 用於壓縮和解壓,可一次操作多個檔案,或者使用萬用字元操作

不帶任何引數:表示壓縮檔案

-d 表示解壓檔案

-c 表示解壓或者壓縮後,對新檔案重新命名

-v 表示輸出壓縮比資訊

************************* bizp2 壓縮與解壓 *************************

bizp2 提供比 gzip 更好的壓縮比,使用方法與gzip相同,引數也相同

注意檔案格式是 bz2 比如

bzip2 -c man.config > a.config.bz2

總結:gzip 和 bzip2 都適合於解壓和壓縮單個檔案,儘管也可以對目錄操作,但不像winrar那種

是把乙個目錄以及裡面的檔案都壓縮成乙個大檔案,而是對目錄裡面的每個檔案單獨壓縮

所以要對目錄操作,使用 tar,這就和windows平台使用 winrar 一樣

而且winrar也支援把tar壓縮後的檔案解壓開!

************************** tar 壓縮與解壓 ***************

man tar 查詢到該命令的所有引數與使用方法,引數較多,注意以下幾個常用引數

-j 表示tar包支援bzip2,所以帶這個引數打包的話,檔案可以命名為 *.tar.bz2 表示支援bzip2

-z 表示tar包直接gzip,可以命名為 *.tar.gz,如果這兩個引數都不使用,建議命名為 *.tar

-v 表示打包或者解壓過程中輸出檔案資訊

-c 新建打包檔案

-x 表示解壓檔案

-f 表示要處理的檔名

-t 表示檢視tar包目錄結構,一般你想拿到壓縮包裡面某乙個檔案時,可以先檢視目錄結構,再單獨解壓出來乙個檔案

1.打包

tar -jcv -f 檔名.tar.bz2  等待被打包的檔案或者目錄

tar -zcv -f 檔名.tar.gz   等待被打包的檔案或者目錄

tar -cv -f 檔名.tar       等待被打包的檔案或者目錄

這個引數 -f 可以和前面的引數合併,比如

tar -jcvf

tar -zcvf

tar -cvf

示例:tar -jcvf test.tar.bz2  /etc/  表示把 etc 目錄打包

tar -zcvf test.tar.gz  /etc/  很明顯使用 gzip 技術打包

tar -cvf test.tar /etc/  直接使用tar技術打包

2.解壓 -x表示解壓檔案

所以打解壓命令只要把 打包 命令中的 c 換成 x 即可

tar -jxvf test.tar.bz2  直接在當前目錄解壓

tar -zxvf test.tar.gz   直接在當前目錄解壓

tar -xvf  test.tar      直接在當前目錄解壓

**********== 如果要解壓到指定目錄,使用 -c 引數,注意是大寫 c  **********====

tar -xvf test.tar -c b/ 表示解壓到當前目錄的 b 資料夾下

3.檢視tar包目錄結構 -t 表示檢視

tar -jtvf test.tar.bz2

tar -ztvf test.tar.gz

tar -tvf  test.tar

4.解壓tar包中單個檔案

====>打包比如 /etc 目錄已經打成了tar包,命名為 test.tar

tar -cvf test.tar /etc

====>先找到你要解壓的單個檔案在tar包中的目錄,比如你想解壓出來 passwd 檔案

tar -tvf test.tar | grep 'passwd'   

這裡使用 管道 | 來拼接兩個命令,grep 'passwd' 本意是查詢包含有 passwd 的檔案(注意路徑中包含也算)

結合 tar -tvf 來使用,就是在這個tar包中,查詢包含 passwd 的檔案

比如找打 /etc/passdw 這個檔案,假設就是你想要解壓的!

====>將tar包中 etc 目錄下 passwd 檔案解壓出來:此處  etc/passwd 就是指在 test.tar 包中,passwd 的路徑

tar -xvf test.tar   etc/passwd

linux 常用壓縮與解壓縮命令

以下是linux下常用的壓縮與解壓命令。1 compress,是非常老的命令,現在基本不用了,所以這裡就不說了。2 gzip,zcat是應用最廣的壓縮命令 注意 對於目錄是分別壓縮 選項 c 將壓縮的資料輸出到螢幕上,可通過資料資料流重定向來處理 d 解壓縮的引數 v 可顯示壓縮比等資訊 壓縮等級,...

Linux常用壓縮解壓命令

基本用法 1.打包檔案 tar cvf test.tar test 2.打包並壓縮檔案 tar zcvf test.tar.gz test 2.解包檔案 先切換到要解包到的目錄,然後執行 tar xvf test.tar 引數詳解 c,create 建立乙個新歸檔 x,extract,get 從歸檔...

linux常用壓縮 解壓命令

gzip gunzip gzip gunzip是用來壓縮和解壓縮單個檔案的工具,使用方法比較簡單,直接在命令後跟檔名即可。gzip把1.txt壓縮,原檔案被替換成了1.txt.gz,檔案大小縮至4k。再通過gunzip把1.txt.gz解壓縮,檔案恢復原樣。tartar不但可以打包檔案,還可以將整個...