(十二)、文件的壓縮與打包
- 2020 年 12 月 26 日
- 筆記
- 學會linux-提高生產力,不再996
一、常見的壓縮擴展名及壓縮指令
1、常用的擴展名
- 常用壓縮文件的擴展名:「.tar、.tar.gz、 .tgz、 .gz、 .Z、 .bz2、 .xz」,有這麼多擴展名的原因是不同的壓縮技術無法互通壓縮和解壓縮;
- 擴展名解析:
.Z compress程式壓縮的文件
.zip zip程式壓縮的文件
.gz gzip程式壓縮的文件(常用)
.bz2 bzip2程式壓縮的文件(常用)
.xz xz程式壓縮的文件(常用)
.tar tar程式打包的數據,並沒有壓縮過
.tar.gz tar程式打包的文件,並經過gzip壓縮
.tar.bz2 tar程式打包的文件,並經過bzip2的壓縮
.tar.xz tar程式打包的文件,並經過xz的壓縮
2、常用的命令及格式
- gzip:應用最廣的命令,可以解開compress,zip,gzip等軟體壓縮的文件,使用zcat、zmore、zless、zgrep可以直接操作.gz文件。gzip壓縮時源文件不會保存。
命令格式:gzip [-選項] 文件名
選項:
-c –stdout 將壓縮的數據輸出到螢幕上,可通過數據流重定向處理
-d –decompress 解壓縮的參數
-t –test 檢驗一個壓縮文件的一致性
-f –force 強制壓縮文件,不管文件名稱或硬鏈接是否存在以及該文件是否為符號鏈接
-l –list 列出壓縮文件目錄
-N –name
-r –recursive 遞歸處理
-v 可以顯示出源文件/壓縮文件的壓縮比等過程資訊
-# #為數字,代表壓縮等級,-1最快,壓縮比最差,-9最慢,壓縮比最好,默認-6
- bzip2:bzip2提供比gzip更好的壓縮比,生成後綴為bz2的文件,可以使用bzcat、bzmore、bzless及bzgrep直接操作.bz2文件
命令格式:bzip2 [-選項] 文件名
選項:
-c –stdout 將壓縮的數據輸出到螢幕上,可通過數據流重定向處理
-d –decompress 解壓縮的參數
-t –test 檢驗一個壓縮文件的一致性
-f –force 強制壓縮文件,不管文件名稱或硬鏈接是否存在以及該文件是否為符號鏈接
-l –list 列出壓縮文件目錄
-k –keep 保留輸入文件,不會刪除原始數據
-v 可以顯示出源文件/壓縮文件的壓縮比等過程資訊
-# #為數字,代表壓縮等級,-1最快,壓縮比最差,-9最慢,壓縮比最好,默認-6
- xz:提供比bzip2更好的壓縮比,但是壓縮所需要的時間成負相關;可以使用xzcat、xzmore、xzless、xzgrep直接對.xz文件進行操作。
命令格式:xz [-選項] 文件名
選項:
-c –stdout 將壓縮的數據輸出到螢幕上,可通過數據流重定向處理
-d –decompress 解壓縮的參數
-t –test 檢驗一個壓縮文件的一致性
-f –force 強制壓縮文件,不管文件名稱或硬鏈接是否存在以及該文件是否為符號鏈接
-l –list 列出壓縮文件目錄
-k –keep 保留輸入文件,不會刪除原始數據
-v 可以顯示出源文件/壓縮文件的壓縮比等過程資訊
-# #為數字,代表壓縮等級,-1最快,壓縮比最差,-9最慢,壓縮比最好,默認-6
二、打包命令
1、打包命令介紹
前面介紹的壓縮文件只能對一個文件進行操作,雖說三個命令也能夠對目錄進行操作,但是,這個些命令對目錄的壓縮指的是將目錄內的所有文件分別進行壓縮,linux我們可以使用打包命令tar將多個文件打包成一個文件然後再進行壓縮,這樣就會有各種.tar.gz、 .tzr.bz2、 .tar.xz等先打包後壓縮的文件。
2、tar
打包命令格式:tar [-c][options] -f [dst_file_name] [src_file]
解包命令格式:tar [-x][options] -f [src_file]
選項:
-c –create 創建打包文件,可搭配-v查看打包過程
-x –extract 解包,可以搭配-C在特定目錄解開
-z 通過gzip的支援進行壓縮或者解壓縮
-j 通過bzip2的支援進行壓縮或者解壓縮
-J 通過xz的支援進行壓縮或者解壓縮
-v 將正在處理的文件名顯示出來
-f –filename -f後面要跟著被處理的文件名
-C 目錄 解包時,解到特定的目錄
-t –list 列出包中的文件
常用的命令組合
打包: tar -jcv -f filename.tar.bz2 要被壓縮的文件
查詢:tar -jtv -f filename.tar.bz2
解包:tar -jxv -f filename.tar.bz2 -C 想要解壓到的目的目錄