將多個檔案或目錄合併成為乙個特殊的檔案。比如: 搬家…腦補畫面 img.
當我們在傳輸大量的檔案時,通常都會選擇將該檔案進行壓縮,然後在進行傳輸。
首先:壓縮後的檔案會比壓縮前的檔案小。乙個28g的資料夾壓縮後能達到6g
其次:多個檔案傳輸很慢,但單個檔案傳輸會很快,同時還能節省網路的消耗。
(比如: 搬家時,單行李往外拿和打包後往外拿??你懂我意思?)
在windows系統下,我們接觸最多的壓縮格式是 rar 或 zip ,但在linux上使用最多的壓縮格式是 zip 和 tar.gz 。當然不用擔心,linux上的壓縮格式放在windows系統下都是可以正常開啟的。
ps: linux不支援 windows下的 rar 格式的壓縮檔案。windows和linux互通通常選擇 zip
格式壓縮工具
.zip
zip壓縮工具
.gzgzip壓縮工具,只能壓縮檔案,會刪除原檔案(通常配合tar使用)
.bz2
bzip2壓縮工具,只能壓縮檔案,會刪除原檔案(通常配合tar使用)
.tar.gz
先使用tar命令歸檔打包,然後使用gzip壓縮
.tar.bz2
先使用tar命令歸檔打包,然後使用bzip壓縮
使用gzip方式進行壓縮檔案
123
4567
891011
# 僅對檔案有效,對資料夾無效,壓縮有檔案刪除,解壓後壓縮包刪除
[root@lqz ~]# yum install gzip -y
[root@lqz ~]# gzip file #對檔案進行壓縮
[root@lqz ~]# zcat file.gz #檢視gz壓縮後的檔案
[root@lqz ~]# gzip -d file.gz #解壓gzip的壓縮包
#使用場景:當需要讓某個檔案不生效時,快速關閉和啟用配置檔案
[root@lqz ~]# cd /etc/yum.repos.d/
[root@lqz ~]# gzip *
[root@lqz ~]# gzip centos-vault.repo --> centos-vault.repo.gz
[root@lqz ~]# zcat centos-vault.repo.gz --> 檢視不想解壓的壓縮包檔案內容
使用zip命令可以對檔案進行壓縮打包,解壓則需要使用unzip命令
123
4567
891011
1213
1415
1617
1819
2021
2223
2425
# 預設情況下沒有zip和unzip工具,需要進行安裝
[root@lqz ~]# yum install zip unzip -y
#1.壓縮檔案為zip包
# zip 壓縮表名 壓縮的檔案
[root@lqz ~]# zip filename.zip filename
# 打包不通目錄下的不通檔案
[root@lqz ~]# zip filename1.zip file1 file2 /etc/hosts
#2.壓縮目錄為zip包 (不加r,只會打包乙個資料夾)
[root@lqz ~]# zip -r dir.zip dir/
#3.檢視zip壓縮包是否是完整的
[root@lqz ~]# zip -t filename.zip
testof filename.zip ok
#4.不解壓壓縮檢視壓縮包中的內容
[root@lqz ~]# unzip -l filename.zip
[root@lqz ~]# unzip -t filename.zip
#5.解壓zip檔案包, 預設解壓至當前目錄
[root@lqz ~]# unzip filename.zip
#6.解壓zip內容至/opt目錄
[root@lqz ~]# unzip filename.zip -d /opt/
tar是linux下最常用的壓縮與解壓縮, 支援檔案和目錄的壓縮歸檔
123
4567
891011
1213
1415
1617
1819
2021
2223
2425
2627
#語法:tar [-zjxcvfpp] filename
c #建立新的歸檔檔案
x #對歸檔檔案解包
t #列出歸檔檔案裡的檔案列表
v #輸出命令的歸檔或解包的過程
f #指定包檔名,多引數f寫最後
z #使用gzip壓縮歸檔後的檔案(.tar.gz)
j #使用bzip2壓縮歸檔後的檔案(.tar.bz2)
j #使用xz壓縮歸檔後的檔案(tar.xz)
c #指定解壓目錄位置
x #排除多個檔案(寫入需要排除的檔名稱)
h #打包軟鏈結
--hard-dereference #打包硬鏈結
--exclude #在打包的時候寫入需要排除檔案或目錄
#常用打包與壓縮組合
czf #打包tar.gz格式 常用
cjf #打包tar.bz格式 不怎麼用
cjf #打包tar.xz格式 不考慮
zxf #解壓tar.gz格式
jxf #解壓tar.bz格式
xf #自動選擇解壓模式
xvf #顯示解壓過程
tf #檢視壓縮包內容
1.將檔案或目錄進行打包壓縮
123
4567
891011
1213
1415
16
#1.以gzip歸檔方式打包並壓縮
tar czf test.tar.gz test/ test2/
#2.以bz2方式壓縮
tar cjf test.tar.bz2 dir.txt dir/
#3.打包鏈結檔案,打包鏈結檔案的真實檔案
[root@lqz ~]# cd /
[root@lqz /]# tar czfh local.tar.gz etc/rc.local
#4.打包/tmp下所有檔案
[root@lqz ~]# cd /
[root@lqz /]# find tmp/ -type f | xargs tar czf tmp.tar.gz
#5.打包/tmp下所有檔案
[root@lqz /]# tar czf tmp.tar.gz $(find /tmp/ -type f)
2.排除檔案, 並打包壓縮
123
4567
891011
1213
#1.排除單個檔案
[root@lqz /]# tar czf etc.tar.gz --exclude=etc/services etc/
#2.排除多個檔案
[root@lqz /]# tar czf etc.tar.gz --exclude=etc/services --exclude=etc/rc.local etc/
#3.將需要排除的檔案寫入檔案中
[root@lqz /]# cat paichu.list
etc/services
etc/rc.local
etc/rc.d/rc.local
#指定需要排除的檔案列表, 最後進行打包壓縮
[root@lqz /]# tar czfx etc.tar.gz paichu.list etc/
3.檢視壓縮檔案
1
2
#檢視壓縮包內容和解壓
[root@lqz /]# tar tf test.tar.gz
4.解壓縮檔案
123
45
#1.解壓至當前目錄
[root@lqz /]# tar xf test.tar.gz
#2.將解壓內容儲存至指定的/tmp目錄
[root@student ~]# tar xf /etc/local.tar.gz -c /tmp
linux 打包 壓縮
壓縮好處 1.節省空間 2.節省頻寬 解決脈絡 現在有各種壓縮檔案形式,原因何在?主要是壓縮技術更新換代,壓縮方法不完全相同。不同的字尾,便於區分。最早期的壓縮命令式compress,不過現在已經不怎麼用了。後來開發出新一代的壓縮命令gzip gnu zip 和壓縮比更好的bzip2壓縮命令。注意 ...
linux 打包 壓縮
閱讀目錄 回到頂部 壓縮好處 1.節省空間 2.節省頻寬 解決脈絡 現在有各種壓縮檔案形式,原因何在?主要是壓縮技術更新換代,壓縮方法不完全相同。不同的字尾,便於區分。最早期的壓縮命令式compress,不過現在已經不怎麼用了。後來開發出新一代的壓縮命令gzip gnu zip 和壓縮比更好的bzi...
linux 打包 壓縮
root xiaoluo gzip cdtv 檔名 root xiaoluo zcat 檔名.gz 選項與引數 c 將壓縮的資料輸出到螢幕上,可通過過資料流重導向來處理 d 解壓縮的引數 t 可以用來檢驗乙個壓縮檔案的一致性,看看檔案有無錯誤 v 可以顯示出原檔案 壓縮檔案的壓縮比等資訊 壓縮等級 ...