- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
一、壓縮文件的原理
壓縮技術,簡而言之,我們可以將其想象成:其實文件里面有很多的"空間"存在,并不是完全填滿的,而"壓縮"技術就是將這些"空間"填滿,從而使得整個文件占用量下降。
目前我們的操作系統數據中,都是使?字節(byte)單位來計量,不過事實上,計算機中最小的計量單位應該是位(bit),我們知道 1 byte = 8 bit。那么我們是怎么樣對一些數據進行記錄的呢?
例如我們只是需要記憶一?數字,即1這個數字,考慮到計算機所謂的二進制,如此一來, 1 會在最右邊占據 1 個 bit ,而其他? 7 個 bits 將會自動的被填上 0 !其實在這樣的例子中,那 7 個 bits 應該是 【空的】 才對!不過,為了要滿足目前我們的操作系統數據的存取,所以就會將該數據轉為 byte 的型態來記錄。而壓縮技術就是將這些沒有使用到的空間"丟"出來。
文件壓縮以后可以降低磁盤的使用量,減少文件的大小。不過這些"壓縮過的文件"無法直接被操作系統所使用,因此,若要使用這些被壓縮過的文件數據,則必?將它"還原"成未被壓縮的樣子,這就是"解壓縮"。
實例一:將這個/etc目錄下的文件全部打包成 /home/etc.tar
[root@uu home]# tar -cvf etc.tar /etc -->> 這個命令只是用來打包,不進行壓縮
[root@uu home]# tar -zcvf etc.tar /etc -->> 打包以后,使用gzip 對其進行壓縮
[root@uu home]# tar -jcvf etc.tar /etc -->> 打包以后,使用bzip2 對其進行壓縮
# 特別注意,在參數 f 之后的檔案檔名是自己取的,我們習慣上都用 .tar 來作為標識。
# 如果加 z 參數,則以 .tar.gz 或 .tgz 來代表 gzip 壓縮過的 tar file
# 如果加 j 參數,則以 .tar.bz2 來作為擴展名
實例二:查看上述etc.tar 文件里有哪些內容
[root@uu ~]# tar -ztvf etc.tar
# 由于我們使用 gzip 壓縮,所以要查閱該 tarfile 內的文件時,
# 就得要加上 z 這個參數
實例三:將etc.tar 文件解壓縮到當前目錄下
[root@uu home]# tar -zxvf etc.tar
# 此時我們可以發現當前目錄下已經有了一個etc的文件夾,里面就是我們解壓縮出來的文件
實例四:如果我只是希望將 etc.tar 中的 etc/passwd 解壓出來
[root@uu home]# tar -zxvf etc.tar etc/passwd
# 我可以通過 tar -ztvf 來查閱 tarfile 內的文件名,如果單只要一個文件,
# 就可以通過這個方式來完成。注意?! etc.tar.gz 內的根目錄 / 不見了
實例五:備份/etc 內的所有文件,并且保存其權限
[root@uu home]# tar -zxvpf etc.tar.gz /etc/
# 這個 -p 的屬性是很重要的,尤其是當您要保留原本文件的屬性時
實例六:在/home 中,比2013/04/01 新的文件就進行備份
[root@uu home]# tar -N '2013/04/01' -zcvf home.tar /home
實例七:我要備份/home,/etc的所有文件,但是不要備份/home/uu這個目錄下的文件
[root@uu home]# tar --exclude /home/uu -zcvf myfile.tar.gz /home/* /etc
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP