一募书、什么是文件壓縮
- 定義:將多個文件或者目錄合并打包為一個特殊的文件
二块饺、文件壓縮的意義
- 壓縮使 文件按照百分比減小
- 提高文件的傳輸速率
- 節(jié)省網(wǎng)絡資源(寬帶)
三栋荸、Windows和Linux壓縮包類型相同和不同
1)不同點
- Windows一般是zip和rar
- Linux一般使用:zip泣懊、tar.gz
2)相同點
- 相互通用的的壓縮有:zip 咕痛,一般Linux中壓縮的可以在Windows中打開
1、Linux中常見的壓縮類型
格式 | 壓縮工具及運用 |
---|---|
.zip | zip壓縮工具距误,壓縮后不會刪除原文件簸搞。 |
.gz | gzip壓縮工具,只能壓縮文件准潭,壓縮后會刪除原文件趁俊,(通常配合tar使用) |
.bz2 | bzip2壓縮工具,只能壓縮文件刑然,壓縮后會刪除原文件 |
.tar.gz | 先使用tar命令歸檔打包寺擂,然后使用gzip壓縮 |
.tar.gz2 | 先使用tar命令歸檔打包,然后使用gzip壓縮 |
2泼掠、gzip的壓縮方式——只能對文件壓縮并刪除原文件
1)查看壓縮后的文件:zcat
2)gzip -d 解壓壓縮包
3)使用場景
- 當需要讓某個文件在系統(tǒng)中不生效時怔软,我們可以用gzip將其壓縮。
1择镇、對文件進行壓縮
[root@oldboy ~]# gzip cuixinpeng.txt
[root@oldboy ~]# ls
cuixinpeng.txt.gz
2挡逼、查看壓縮包的文件 zcat
[root@oldboy ~]# zcat cuixinpeng.txt.gz
3、解壓壓縮包
[root@oldboy ~]# gzip -d cuixinpeng.txt.gz
[root@oldboy ~]# ls
cuixinpeng.txt
2腻豌、zip的壓縮方式——不會刪除原文件
1)使用方法:zip + 壓縮包名稱(.zip) + 壓縮的文件
2)zip壓縮包的遞歸參數(shù): -r (打包目錄)
3)unzip解壓家坎, -d 指定解壓到哪個目錄
unzip +解壓包 + -d +解壓到的哪個目錄
4)-T 查看zip壓縮包是否是完整的 (zip + -T + 壓縮包)
5)-l 不解壓壓縮查看壓縮包中的內(nèi)容(unzip + -l + 壓縮包)
6)-t 檢測壓縮的文件是否都ok (unzip + -t + 壓縮包)
1、用zip壓縮文件
[root@oldboy ~]# zip cui.zip cuixinpeng.txt
adding: cuixinpeng.txt (stored 0%)
[root@oldboy ~]# ls
cuixinpeng.txt cui.zip
2吝梅、利用 -r 遞歸將目錄下面的文件一并打包壓縮
[root@oldboy ~]# zip -r heh.zip /var/log/
adding: var/log/ (stored 0%)
adding: var/log/tallylog (stored 0%)
adding: var/log/audit/ (stored 0%)
adding: var/log/vmware-vgauthsvc.log.0 (deflated 93%)
adding: var/log/vmware-vmsvc.log (deflated 90%)
adding: var/log/firewalld (stored 0%)
adding: var/log/yum.log (deflated 62%)
adding: var/log/vmware-network.6.log (deflated 64%)
[root@oldboy ~]# ls
heh.zip
3虱疏、用unzip解壓壓縮包 unzip
[root@oldboy ~]# unzip heh.zip
[root@oldboy ~]# ls
heh.zip var
4、unzip -d解壓到指定的路徑
[root@oldboy ~]# unzip heh.zip -d /tmp/
[root@oldboy ~]# ls /tmp/var/log/
5憔涉、查看zip壓縮包是否是完整的
[root@oldboy ~]# zip -T heh.zip
test of filename.zip OK
6订框、不解壓壓縮查看壓縮包中的內(nèi)容
[root@oldboy ~]# unzip -l heh.zip
7、檢測文件是否都ok
[root@oldboy ~]# unzip -t heh.zip
- 解壓時注意:解壓時有可能會覆蓋已經(jīng)有的文件兜叨,所以盡可能找一個空的目錄解壓穿扳,然后移動到指定目錄
3衩侥、tar.gz格式壓縮包——tar打包,gzip進行壓縮
1)參數(shù):
符號 | 含義 |
---|---|
c | 創(chuàng)建新的文件歸檔 |
x | 對歸檔的文件進行解包 |
t | 列出歸檔文件中的文件列表 |
v | 輸出命令的歸檔或者解包過程 |
f | 指定包文件名矛物,多參數(shù)f寫最后 |
z | 使用gzip壓縮歸檔文件(文件類型為 .tar.gz) |
j | 使用bzip2壓縮歸檔后的文件(文件類型為 .tar.bz2) |
J | 使用xz壓縮歸檔后的文件(文件類型為 tar.xz) |
C | 指定解壓到目錄位置 |
X | 排除多個文件(寫入需要排除的文件名稱) |
h | 打包時將軟鏈接 同時打包 |
--exclude | 在打包的時候?qū)懭胄枰懦募蚰夸?/td> |
2)常用的壓縮包類型
符號 | 含義 |
---|---|
czf | 打包tar.gz格式 |
tf | 查看壓縮包內(nèi)容 |
xf | 自動選擇解壓模式 |
很少用到的類型
cjf 打包tar.bz格式
zxf 解壓tar.gz格式
jxf 解壓tar.bz格式
cJf 打包tar.xz格式
3)應用
1茫死、利用以 gzip 方式壓縮 和以 bz2 方式壓縮
[root@oldboy ~]# tar czf wode.tar.gz cui.txt var/
[root@oldboy ~]# tar cjf wode.tar.bz2 cui.txt var/
[root@oldboy ~]# ls
cui.txt heh.zip var wode.tar.gz wode.tar.bz2
2、查看壓縮的文件
[root@oldboy ~]# tar tf wode.tar.gz
cui.txt
var/
var/log/
var/log/tallylog
var/log/grubby_prune_debug
var/log/lastlog
var/log/wtmp
var/log/btmp
3履羞、解壓壓縮的文件
[root@oldboy ~]# tar xf wode.tar.gz
4峦萎、解壓壓縮包至指定目錄
[root@oldboy ~]# tar xf wode.tar.gz -C /tmp/
4)壓縮文件或者目錄時排除部分文件,命令:--exclude
1忆首、利用--exclude排除
[root@oldboy ~]# tar czf etc.tar.gz /etc/ --exclude=etc/services
[root@oldboy ~]# tar czf etc.tar.gz /etc/ --exclude=etc/passwd -exclude=etc/shadow
2爱榔、將需要排除的文件寫入文件中,然后排除
[root@oldboy ~]# vim pc.txt
etc/gshadow
etc/gshadow
etc/passwd
etc/passwd
etc/shadow
etc/shadow
etc/security/opasswd
etc/pam.d/passwd
[root@oldboy ~]# cat pc.txt
etc/gshadow
etc/gshadow
etc/passwd
etc/passwd
etc/shadow
etc/shadow
etc/security/opasswd
etc/pam.d/passwd
[root@oldboy ~]# tar czXf pc.txt etc.tar.gz /etc/
5)例題:文件的備份和恢復
1.環(huán)境準備
[root@oldboy ~]# yum install mariadb-server
[root@oldboy ~]# systemctl start mariadb
[root@oldboy ~]# mkdir /backup
例1.mysql備份及恢復
[root@oldboy ~]# tar cJf /backup/mysql.tar.xz /var/lib/mysql
[root@oldboy ~]# tar xf /backup/mysql.tar.xz -C /
例2 mysql備份及恢復
[root@oldboy ~]# cd /var/lib/mysql
[root@oldboy mysql]# tar cJf /backup/mysql.tar.xz *
[root@oldboy mysql]# tar tf /backup/mysql.tar.xz
[root@oldboy mysql]# tar xf /backup/mysql.tar.xz C /var/lib/mysql
總結(jié)
今天主要學習了文件的怎樣壓縮糙及,以及壓縮的不同方式详幽,我們在不同的環(huán)境與條件下選擇不同的壓縮方式。學了很多關于壓縮的參數(shù)與選項浸锨。最后還學了一個怎樣備份恢復文件唇聘。
Linux中如何壓縮解壓文件.jpg