Linux 中創建和解壓文檔 tar 命令

1.解壓一個tar.gz歸檔

一般常見的用法是用來解壓歸檔文件,下面的命令將會把文件從一個tar.gz歸檔文件中解壓出來。

$ tar -xvzf tarfile.tar.gz
<blockquote><p>x – 解壓文件</p><p>v – 冗長模式,在解壓每個文件時打印出文件的名稱。</p><p>z – 該文件是一個使用 gzip 壓縮的文件。</p><p>f – 使用接下來的tar歸檔來進行操作。</p></blockquote>

2.將文件解壓到一個指定的目錄或路徑

爲了將文件解壓到一個指定的目錄中,使用“-C”選項來指定路徑,此處的“C”是大寫“C”

$ tar -xvzf abc.tar.gz -C /opt/folder/

3. 提取出單個文件

爲了從一個歸檔文件中提取出單個文件,只需要將文件名按照以下方式將其放置在命令後面。
$ tar -xz -f abc.tar.gz "./new/abc.txt"

//提出多個文件
<pre>$ tar -xz -f abc.tar.gz "./new/cde.txt" "./new/abc.txt"


4.使用通配符來解壓多個文件

通配符可以用來解壓於給定通配符匹配的一批文件,例如所有以”.txt”作爲擴展名的文件。

$ tar -xz -f abc.tar.gz --wildcards "*.txt"

5. 列出並檢索tar歸檔文件中的內容

如果你僅僅想要列出而不是解壓tar歸檔文件的中的內容,使用“-t”(test)選項, 下面的命令用來打印一個使用gzip壓縮過的tar歸檔文件中的內容。

$ tar -tz -f abc.tar.gz
./new/
./new/cde.txt
./new/subdir/
./new/subdir/in.txt
./new/abc.txt
...

可以將輸出通過管道定向到grep來搜索一個文件,或者定向到less命令來瀏覽內容列表。 使用”v”冗長選項將會打印出每個文件的額外詳細信息。

對於 tar.bz2/bzip文件,需要使用”j”選項。

$ tar -tvz -f abc.tar.gz | grep abc.txt
-rw-rw-r-- enlightened/enlightened 0 2015-01-13 11:40 ./new/abc.txt

6.創建一個tar/tar.gz歸檔文件

現在我們已經學過了如何解壓一個tar歸檔文件,是時候開始創建一個新的tar歸檔文件了。tar命令可以用來將所選的文件或整個目錄放入到一個歸檔文件中,以下是相應的樣例。

下面的命令使用一個目錄來創建一個tar歸檔文件,它會將該目錄中所有的文件和子目錄都加入到歸檔文件中。

$ tar -cvf abc.tar ./new/
./new/
./new/cde.txt
./new/abc.tx

上述命令不會創建一個壓縮的的歸檔文件,只是一個普通的歸檔文件,只是將多個文件放入到一個歸檔文件中並沒有真正地壓縮每個文件。

爲了使用壓縮,可以分別使用“z”或“j”選項進行gzip或bzip壓縮

$ tar -cvzf abc.tar.gz ./new/

7. 在添加文件之前進行確認

一個有用的選項是“w”,該選項使得tar命令在添加每個文件到歸檔文件之前來讓用戶進行確認,有時候這會很有用。

使用該選項時,只有用戶輸入“y”時的文件纔會被加入到歸檔文件中,如果你不輸入任何東西,其默認表示是一個“n”。

# 添加指定文件

$ tar -czw -f abc.tar.gz ./new/*
add ‘./new/abc.txt’?y
add ‘./new/cde.txt’?y
add ‘./new/newfile.txt’?n
add ‘./new/subdir’?y
add ‘./new/subdir/in.txt’?n

#現在列出所有被加入的文件

$ tar -t -f abc.tar.gz 
./new/abc.txt
./new/cde.txt
./new/subdir/

8. 加入文件到存在的歸檔文件中

“r”選項可以被用來將文件加入到已存在的歸檔文件中,而不用創建一個新的歸檔文件,下面是一個簡單的樣例:
$ tar -rv -f abc.tar abc.txt

9.通過tar來進行備份

一個真實的場景是在固定的時間間隔內來備份目錄,tar命令可以通過cron調度來實現這樣的一個備份
$ tar -cvz -f archive-$(date +%Y%m%d).tar.gz ./new/

使用cron來運行上述的命令會保持創建類似以下名稱的備份文件 :’archive-20150218.tar.gz’。

當然,需要確保日益增長的歸檔文件不會導致磁盤空間的溢出。




發佈了122 篇原創文章 · 獲贊 112 · 訪問量 39萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章