首先要弄清兩個概念:打包和壓縮。
打包是指將一大堆檔案或目錄什麼的變成乙個總的檔案,壓縮則是將乙個大的檔案通過一些壓縮演算法變成乙個小檔案。為什麼要區分這兩個概念呢?其實這源於linux中的很多壓縮程式只能針對乙個檔案進行壓縮,這樣當你想要壓縮一大堆檔案時,你就得先借助另外的工具將這一大堆檔案先打 成乙個包,然後再就原來的壓縮程式進行壓縮。linux下最常用的打包程式就是tar了,使用tar程式打出來的包我們常稱為tar包,tar包檔案的命令通常都是以.tar結尾的。生成tar包後,就可以用其它的程式來進行壓縮了。
語法:tar [主選項+輔選項] 檔案或者目錄
主選項(
必填):
c 建立新的檔案檔案。如果使用者想備份乙個目錄或是一些檔案,就要選擇這個選項。
r 把要存檔的檔案追加到檔案檔案的未尾。例如使用者已經作好備份檔案,又發現還有乙個目錄或是一些檔案忘記備份了,這時可以使用該選項,將忘記的目錄或檔案追加到備份檔案中。
t 列出檔案檔案的內容,檢視已經備份了哪些檔案。
u 更新檔案。就是說,用新增的檔案取代原備份檔案,如果在備份檔案中找不到要更新的檔案,則把它追加到備份檔案的最後。
x 從檔案檔案中釋放檔案。
輔助選項(
可選):
b 該選項是為磁帶機設定的。其後跟一數字,用來說明區塊的大小,系統預設值為20(20*512 bytes)。
f 使用檔案檔案或裝置,
通常是必選的,這是最後乙個引數,後面只能接檔名。
k 儲存已經存在的檔案。例如我們把某個檔案還原,在還原的過程中,遇到相同的檔案,不會進行覆蓋。
m 在還原檔案時,把所有檔案的修改時間設定為現在。
m 建立多卷的檔案檔案,以便在幾個磁碟中存放。
v 詳細報告tar處理的檔案資訊。如無此選項,tar不報告檔案資訊。
w 每一步都要求確認。
z 用gzip來壓縮/解壓縮檔案,
加上該選項後可以將檔案檔案進行壓縮,但還原時也一定要使用該選項進行解壓縮
。用例:
1、tar打包
假設此時要打包的資料夾為/home/build/pre_test,進入到build目錄下,執行
# tar -cvf post_test.tar pre_test
即可在當前目錄下生產post_test.tar
注:tar: removing leading `/' from member names
。此時可以使用-p引數(注意大寫)解決這個問題# tar -cvf post_test.tar /home/build/pre_test
這條命令是將所有.jpg的檔案打成乙個名為all.tar的包。-c是表示產生新的包,-f指定包的檔名。
# tar -rf all.tar *.gif
這條命令是將所有.gif的檔案增加到all.tar的包裡面去。-r是表示增加檔案的意思。
# tar -uf all.tar logo.gif
這條命令是更新原來tar包all.tar中logo.gif檔案,-u是表示更新檔案的意思。
# tar -tf all.tar
這條命令是列出all.tar包中所有檔案,-t是列出檔案的意思
# tar -xf all.tar
這條命令是解出all.tar包中所有檔案,-x是解包的意思
2、tar打包同時壓縮,比如呼叫gzip、bzip2等
1) tar呼叫gzip
tar中使用-z這個引數來呼叫gzip。
這條命令是將所有.jpg的檔案打成乙個tar包,並且將其用gzip壓縮,生成乙個gzip壓縮過的包,包名為all.tar.gz
# tar -xzf all.tar.gz
這條命令是將上面產生的包解開。
2) tar呼叫bzip2
tar中使用-j這個引數來呼叫bzip2。
這條命令是將所有.jpg的檔案打成乙個tar包,並且呼叫bzip2壓縮,生成乙個bzip2壓縮過的包,包名為all.tar.bz2
# tar -xjf all.tar.bz2
這條命令是將上面產生的包解開。
3) tar呼叫compress
tar中使用-z這個引數來呼叫compress 。
這條命令是將所有.jpg的檔案打成乙個tar包,並且呼叫compress壓縮,生成乙個uncompress壓縮過的包,包名為all.tar.z
# tar -xzf all.tar.z
這條命令是將上面產生的包解開。
3、對於window下的常見壓縮檔案.zip和.rar
1) 對於.zip
這條命令是將所有.jpg的檔案壓縮成乙個zip包
注:如果要壓縮的是個資料夾,則要加上-r引數,表示呼叫遞迴壓縮,如:zip -r temp.zip temp
# unzip all.zip
這條命令是將all.zip中的所有檔案解壓出來
# tar -xzpvf rarlinux-3.2.0.tar.gz
# cd rar
# make
這樣就安裝好了,安裝後就有了rar和unrar這兩個程式,rar是壓縮程式,unrar是解壓程式。它們的引數選項很多,這裡只做簡單介紹,依舊舉例說明一下其用法:
這條命令是將所有.jpg的檔案壓縮成乙個rar包,名為all.rar,該程式會將.rar 擴充套件名將自動附加到包名後。
# unrar e all.rar
這條命令是將all.rar中的所有檔案解壓出來
Linux檔案壓縮 打包 解壓
在linux日常維護中,經常需要備份同步一些比較重要的檔案,而在傳輸過程中如果檔案比較大往往會非常慢,而且還會非常占用空間,這時候就需要我們使用壓縮工具對大檔案進行壓縮打包,下面我們來介紹一下常用的壓縮工具以及其使用方法。1.命令 gzip d 1 9 filename 作用 用來壓縮檔案,不能直接...
Linux檔案打包壓縮 解壓縮 備份命令
linux檔案打包壓縮 解壓縮 備份命令使用方法對於剛剛接觸linux的人來說,一定會給linux下一大堆各式各樣的檔名給搞暈。別 個不說,單單就壓縮檔案為例,我們知道在windows下最常見的壓縮檔案就只有兩種 一是,zip,另乙個是.rar。可是linux就不同了,它有.gz tar.gz tg...
linux 下壓縮 解壓 打包命令
zz 自http dev.firnow.com course 6 system linux linuxjs 200896 139627.html tar 解包 tar xvf filename.tar 打包 tar cvf filename.tar dirname 注 tar是打包,不是壓縮!gz解...