Linux常用的打包壓縮指令

壓縮的原理

計算機是以二進制存儲數據的,也就是0和1的格式。
壓縮文件就是一些聰明的工程師通過複雜的算法,忽略掉0,只保留1的存儲空間,從而達到減少文件容量的目的。
壓縮過的文件不能被系統直接讀取,需要解壓縮。

壓縮的優點

1.壓縮過的文件或者目錄變小了,節省磁盤空間。
2.網絡傳輸,節省帶寬,提高傳輸速度。

常見的壓縮指令

compress

過時的壓縮指令

老舊的Unix機器纔會有,新的機器不會再默認安裝

壓縮比低

目前已經很少使用,如果機器沒有安裝,不建議再使用

#新的聯網機器可以通過聯網安裝
yum -y install ncompress

#常見用法
compress [-rcv] 文件或者目錄名
# -r  將目錄下的文件一起壓縮
# -c  將壓縮數據輸出到屏幕
# -v  展示壓縮後的信息和壓縮過程
uncompress 文件名.Z 
# 解壓縮

#練習
compress xxx
#默認會直接壓縮爲 xxx.Z,源文件沒了。自動生成壓縮的文件名。

uncompress  xxx.Z
#解壓縮後,壓縮文件沒了,恢復到xxx。

compress -c xxx > xxx.Z
#這樣壓縮,就同時保留了源文件和壓縮文件。但是數據流之後的重導向文件名要自己手動寫。

gzip ,zcat

應用廣泛

用來替代compress,能夠解壓compress壓縮的文件

壓縮的檔案名爲 *.gz

壓縮比高於compress

能夠被windows系統的 WinRAR解壓縮

gzip [-cdtv] 文件名或者目錄名
#-c 結合數據流重導向,同時保留壓縮文件和源文件
#-d 解壓縮
#-t 檢驗壓縮文件的一致性,看文件是否有錯
#-v 顯示壓縮比等信息
#-# 壓縮等級 -1最快,壓縮比最差;-9最慢,壓縮比高。默認-6

zcat 
#讀取壓縮文件的內容,沒有解壓縮文件
#也能夠讀取compress壓縮的內容

bzip2 ,bzcat

壓縮比高於gzip

用來替代gzip,用法幾乎一致

文件名爲 .bz, .bz2, .tbz, .tbz2 等等,可以嘗試使用 bzip2 來解看看

bzip2 [-cdkzv] 文件或者目錄名
#-c  結合數據流重導向,同時保留壓縮文件和源文件
#-d  解壓縮
#-k  保留源文件不會刪除
#-z  壓縮
#-v  顯示壓縮比等信息
#-#  壓縮等級 -1最快,壓縮比最差;-9最慢,壓縮比高。默認-6

#壓縮成 xxx.bz2
bzip2 -z xxx  

#解壓縮
bzip2 -d xxx.bz2

#讀內容
bzcat xxx.bz2

gzip , bzip2 雖然可以壓縮目錄,但是是對目錄下的文件分別壓縮。不像windows下的WinRAR可以將好多數據打包成一個文件。這就需要linux下的打包指令了。

tar

將多個文件或者目錄打包成一個大文件

本身不提供壓縮,但是可以結合壓縮指令對文件進行壓縮

Windows的 WinRAR 也支持 .tar.gz 文件的解壓縮

# 打包與壓縮
tar [-j|-z] [-cv] [-f] 壓縮後的文件名 壓縮文件

#查看
tar [-j|-z] [-tv] [-f] 壓縮後的文件名

#解壓縮
tar [-j|-z] [-xv] [-f] 壓縮後的文件名 [-C] 解壓到目錄

-c 建立打包文件
-t 查看打包文件下的文件名
-x 解壓縮
-j 結合bzip2的壓縮,文件最好命名爲 *.tar.bz2
-z 結合gzip的壓縮,文件最好命名爲 *.tar.bz2
-v 壓縮或者解壓縮的過程,顯示壓縮名
-f 接被處理的文件名
-C 解壓縮的目錄
-p 保留原來的數據權限和屬性
-P 保留絕對路徑,即允許備份數據含有根目錄之意
-exclude=FILE

#簡單用法
壓縮     tar -jcv -f xxx.tar.bz2 要被壓縮的文件
查看     tar -jtv -f xxx.tar.bz2 
解壓縮   tar -jxv -f xxx.tar.bz2 -C 解壓縮的目錄
#j 結合bzip2處理文件
#z 結合gzip處理文件

#如果加上參數 P 可以將壓縮文件帶着根目錄,但是這樣解壓縮後,會覆蓋原有文件,不建議這樣做
tar -jcvP -f etc.tar.bz2 /etc
#如果這樣壓縮備份的話,再解壓,就會把 原來的 /etc 覆蓋,很危險!

#僅解壓縮某一個文件
tar -jxv -f xxx.tar.bz2 xxx/xxxx (打包文件下的某一個文件)

#打包某目錄,但不包含某目錄下的文件
tar -jcv -f xxx.tar.bz2 xxxx --exclude=file (不包含的文件名)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章