系統中如何對文件進行壓縮處理
壓縮的命令 tar
壓縮命令語法:
tar zcvf /oldboy/oldboy.tar.gz 指定要壓縮的數據文件
z 壓縮的方式 為zip
c 創建壓縮包文件
v 顯示壓縮的過程
f 指定壓縮包文件路徑信息
壓縮數據方法:
[root@oldboyedu oldboy]# tar zcvf /oldboy/oldboy.tar.gz /oldboy/services
tar: Removing leading `/' from member names
/oldboy/services
檢查是否壓縮成功:
如何解壓數據包
tar xvf /oldboy/oldboy.tar.gz
確認解壓后的文件和源文件是否一致
1. 看文件的大小和時間信息
2. 利用vimdiff或者diff比較兩個文件內容是否有區別
在不解壓情況下查看壓縮包里面的數據
tar tf /oldboy/oldboy.tar.gz
壓縮過程信息說明
[root@oldboyedu oldboy]# tar zcvf oldboy.tar.gz /oldboy/services
tar: Removing leading `/' from member names --- 默認將壓縮時絕對路徑的根信息移除
/oldboy/services --- 需要壓縮的文件數據信息
相對路徑進行壓縮
[root@oldboyedu oldboy]# tar zcvf oldboy.tar.gz ./services
./services
[root@oldboyedu oldboy]# tar tf oldboy.tar.gz
./services
在壓縮過程中排除指定數據不要被壓縮
tar命令排除參數
--exclude=PATTERN exclude files, given as a PATTERN -- 排除指定單個文件數據
-X, --exclude-from=FILE exclude patterns listed in FILE -- 批量排除多個文件
多個文件進行排除
第一個歷程: 編寫好排除文件
[root@oldboyedu oldboy]# vim /tmp/exclude.txt
/oldboy/oldboy.txt
/oldboy/oldboy.avi
/oldboy/oldboy.jpg
/oldboy/oldboy.png
第二個歷程: 執行命令進行批量排除
[root@oldboyedu oldboy]# tar zcvf /tmp/oldboy05.tar.gz /oldboy --exclude-from=/tmp/exclude.txt
tar: Removing leading `/' from member names
/oldboy/
/oldboy/services
/oldboy/oldboy01/
總結:排除指定數據信息需要定義好路徑信息
路徑信息全部采用絕對路徑
[root@oldboyedu /]# tar zcvf /tmp/oldboy03.tar.gz /oldboy --exclude=/oldboy/oldboy.txt
tar: Removing leading `/' from member names
/oldboy/
/oldboy/services
/oldboy/oldboy01/
路徑信息全部采用相對路徑
[root@oldboyedu /]# tar zcvf /tmp/oldboy04.txt.tar.gz ./oldboy --exclude=./oldboy/oldboy.txt
./oldboy/
./oldboy/services
./oldboy/oldboy01/