語法:tar [主選項+輔選項] 文件或者目錄
使用該命令時,主選項是必須要有的,它告訴tar要做什么事情,輔選項是輔助使用的,可以選用。
主選項:
c 創(chuàng)建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。
r 把要存檔的文件追加到檔案文件的未尾。例如用戶已經作好備份文件,又發(fā)現(xiàn)還有一個目錄或是一些文件忘記備份了,這時可以使用該選項,將忘記的目錄或文件追加到備份文件中。
t 列出檔案文件的內容,查看已經備份了哪些文件。
u 更新文件。就是說,用新增的文件取代原備份文件,如果在備份文件中找不到要更新的文件,則把它追加到備份文件的最后。
x 從檔案文件中釋放文件。
輔助選項:
b 該選項是為磁帶機設定的。其后跟一數(shù)字,用來說明區(qū)塊的大小,系統(tǒng)預設值為20(20*512 bytes)。
f 使用檔案文件或設備,這個選項通常是必選的。
k 保存已經存在的文件。例如我們把某個文件還原,在還原的過程中,遇到相同的文件,不會進行覆蓋。
m 在還原文件時,把所有文件的修改時間設定為現(xiàn)在。
M 創(chuàng)建多卷的檔案文件,以便在幾個磁盤中存放。
v 詳細報告tar處理的文件信息。如無此選項,tar不報告文件信息。
w 每一步都要求確認。
f
這個參數(shù)確實是必選的,要不你就找不到你的tar文件
其實用的時候感覺上有些多余,既然它是必選,那就干脆固化到tar這個命令本身就是啊
可是它偏偏不是這樣的,如果你不用這個參數(shù),他就告述你什么"文件不存在"的錯誤
叫人覺得這是一個設計不良的軟件(或稱命令把)
v
也很重要,通常就能看出詳細信息
所以構造tar包通常是用命令
tar cvf tar包名.tar 目錄,文件列表
所謂目錄文件列表就是以空格形式分割文件和目錄
而解tar包通常是命令
tar xvf tar包名.tar 目錄,文件列表
tar 文件是幾個文件和(或)目錄在一個文件中的集合。這是創(chuàng)建備份和歸檔的佳徑。
tar 使用的選項有:
-c —
創(chuàng)建一個新歸檔。
-f — 當與 -c 選項一起使用時,創(chuàng)建的 tar 文件使用該選項指定的文件名;當與 -x 選項
一起使用時,則解除該選項指定的歸檔。
-t — 顯示包括在 tar 文件中的文件列表。
-v — 顯示文件的歸檔進度。
-x — 從歸檔中抽取文件。
-z — 使用 gzip 來壓縮 tar 文件。
-j — 使用 bzip2
來壓縮 tar 文件。
要創(chuàng)建一個 tar 文件,鍵入:
tar -cvf filename.tar
directory/file
可以使用 tar 命令同時處理多個文件和目錄,方法是將它們逐一列出,并用空格間隔:
tar
-cvf filename.tar /home/mine/work /home/mine/school
上面的命令把 /home/mine
目錄下的 work 和 school 子目錄內的所有文件都放入當前
目錄中一個叫做 filename.tar 的新文件里。
要列出
tar 文件的內容,鍵入:
tar -tvf filename.tar
要抽取 tar 文件的內容,鍵入
tar -xvf
filename.tar
這個命令不會刪除 tar 文件,但是它會把被解除歸檔的內容
復制到當前的工作目錄下,并保留歸檔文件所使用的任何
目錄結構。譬如,如果這個 tar 文件中包含一個叫做
bar.txt 的文件,而這個文件包含在 foo/ 目錄中,那么,
抽取歸檔文件將會導致在你當前的工作目錄中創(chuàng)建
foo/ 目錄,該目錄中包含 bar.txt 文件
tar 默認不壓縮文件。
要創(chuàng)建一個使用 tar 和 bzip 來歸檔壓縮的文件,使用 -j 選項:
tar -cjvf filename.tbz file
以上命令創(chuàng)建了一個歸檔文件,然后將其壓縮為 filename.tbz 文件。如果你使用 bunzip2 命令為 filename.tbz
文件解壓,filename.tbz 文件會被刪除,繼之以 filename.tar 文件。
你還可以用一個命令來擴展并解除歸檔 bzip tar
文件:
tar -xjvf filename.tbz
要創(chuàng)建一個用 tar 和 gzip 歸檔并壓縮的文件,使用 -z 選項:
tar -czvf filename.tgz file
這個命令創(chuàng)建歸檔文件 filename.tar,然后把它壓縮為
filename.tgz 文件(文件 filename.tar 不被保留)。
如果你使用 gunzip 命令來給 filename.tgz
文件解壓,filename.tgz 文件會被刪除,并被
替換為 filename.tar。
你可以用單個命令來擴展 gzip tar
文件:
tar -xzvf filename.tgz
下面是網(wǎng)上收錄的經典范例
例1:把/home目錄下包括它的子目錄全部做備份文件,備份文件名為usr.tar。
$
tar cvf usr.tar /home
例2:把/home目錄下包括它的子目錄全部做備份文件,并進行壓縮,備份文件名為usr.tar.gz 。
$
tar czvf usr.tar.gz /home
例3:把usr.tar.gz這個備份文件還原并解壓縮。
$
tar xzvf usr.tar.gz
例4:查看usr.tar備份文件的內容,并以分屏方式顯示在顯示器上。
$
tar tvf usr.tar | more
要將文件備份到一個特定的設備,只需把設備名作為備份文件名。
例5:用戶在/dev/fd0設備的軟盤中創(chuàng)建一個備份文件,并將/home 目錄中所有的文件都拷貝到備份文件中。
$
tar cf /dev/fd0 /home
要恢復設備磁盤中的文件,可使用xf選項:
$
tar xf /dev/fd0
將兩個文件打入一個tar包
tar cvf log.tar log.0000000007
DBVERSION
1.壓縮一組文件為tar.gz后綴。
# tar cvf backup.tar /etc
#gzip -q
backup.tar
或
# tar cvfz backup.tar.gz /etc/
tar zxvf XXXX.tar.gz
tar jxvf XXXX tar.bz2
2.釋放一個后綴為tar.gz的文件。
#gunzip
backup.tar.gz
#tar xvf backup.tar
或
# tar xvfz backup.tar.gz
3.用一個命令完成壓縮
#tar cvf - /etc/ | gzip -qc > backup.tar.gz
4.用一個命令完成釋放
# gunzip -c backup.tar.gz | tar xvf -
5.如何解開tar.Z的文件?
# tar xvfz backup.tar.Z
或
# uncompress
backup.tar.Z
#tar xvf backup.tar
6.如何解開.tgz文件?
#gunzip
backup.tgz
7.如何壓縮和解壓縮.bz2的包?
#bzip2 /etc/smb.conf
這將壓縮文件smb.conf成smb.conf.bz2
#bunzip2 /etc/smb.conf.bz2
這將在當前目錄下還原smb.conf.bz2為smb.conf
注: .bz2壓縮格式不是很常用,你可以man
bzip2
linux常見壓縮文件類型及解壓
壓縮和打包文件
.bz2 —
使用bzip2命令壓縮的文件,可以使用bzip2 -d filename 解包
.gz — 使用gzip命令壓縮的文件,可以使用gunzip -d
filename 解包
.tar — 使用tar打包的文件,即tarball文件,可以使用tar xf filename
解包
.tbz — 使用tar打完包后再以bzip2命令壓縮的文件,可以使用tar jxf filename 解包
.tgz —
使用tar打完包后再以gzip命令壓縮的文件,可以使用tar zxf filename 解包