tar指令的用法:
gzip和bzip2一次只能處理單一個檔案的壓縮與解壓縮,而tar指令可以處理多個檔案(包括目錄)的壓縮與解壓縮,不過其用法複雜。常見的用法為:
(1) 將檔案打包後壓縮:
tar -c 壓縮方式 選項 -f 打包檔名 徑物一 徑物二 徑物三…
可將徑物一、徑物二、徑物三…等一堆徑物給打包,成為一個新的打包檔(其名稱會是打包檔名)。而徑物一、徑物二、徑物三…等一堆徑物在指令執行過後不會消失。
(1-1) 其中,壓縮方式有:
※ -z:表示在建立打包檔後,還要用gzip將打包檔給進行壓縮。此時建議將打包檔名的副檔名寫為tar.gz以做分別。
※ -j:表示在建立打包檔後,還要用bzip2將打包檔給進行壓縮。此時建議將打包檔名的副檔名寫為tar.bz2以做分別。
※ 無:表示在建立打包檔後,不進行任何壓縮。此時建議將打包檔名的副檔名寫為tar以做分別。
(1-2) 其中,選項有:
※ -v:可寫可不寫。若有寫,會顯示出打包檔的內容。
※ -p:表示檔案在打包之後,會保留原本的權限及屬性。
※ -P:表示檔案在打包之後,其絕對路徑被保留下來。也就是說,解打包時檔案會被放在其絕對路徑底下。若操作不慎,可能會覆蓋掉原有資料,故不建議使用。
範例如:tar -c -z -f pack.tar.gz file1 file2 dir1
(2) 查看某個打包檔的內容:
tar -t 壓縮方式 選項 -f 打包檔名 徑物名一 徑物名二 徑物名三…
僅僅查看名為打包檔名的打包檔其內容有什麼,然後顯示在螢幕上。
(2-1) 其中,徑物名一 徑物名二 徑物名三…可寫可不寫。若有寫,則這些徑物必須存在於打包檔中,指令執行後只顯示打包檔內該徑物的資訊。若不寫,就顯示打包檔內全部徑物的資訊。
(2-2) 其中,壓縮方式有:
※ -z:表示要查看的打包檔,有用gzip壓縮過。通常這種打包檔,其副檔名會是tar.gz。
※ -j:表示要查看的打包檔,有用bzip2壓縮過。通常這種打包檔,其副檔名會是tar.bz2。
※ 無:表示要查看的打包檔,沒有經過任何壓縮。通常這種打包檔,其副檔名會是tar。
(2-3) 其中,選項有:
※ -v:可寫可不寫。若有寫,會顯示出打包檔之內容檔案的詳細資訊。
範例如:tar -tv -z -f pack.tar.gz
(3) 將某個打包檔給「拆包」(就是「解掉打包」的意思):
tar -x 壓縮方式 選項 -f 打包檔名 徑物名一 徑物名二 徑物名三…
可將名為打包檔名的打包檔給拆包,而打包檔並不會消失。
(3-1) 其中,徑物名一 徑物名二 徑物名三…可寫可不寫。若有寫,則這些徑物必須存在於打包檔中,指令執行後只將這些徑物給拆包。若不寫,就拆包打包檔內全部徑物。
(3-2) 其中,壓縮方式有:
※ -z:表示要拆包的打包檔,有用gzip壓縮過。通常這種打包檔,其副檔名會是tar.gz。
※ -j:表示要拆包的打包檔,有用bzip2壓縮過。通常這種打包檔,其副檔名會是tar.bz2。
※ 無:表示要拆包的打包檔,沒有經過任何壓縮。通常這種打包檔,其副檔名會是tar。
(3-3) 其中,選項有:
※ -v:可寫可不寫。若有寫,會顯示出打包檔的內容。
※ -C 目錄名:可寫可不寫。若有寫,會將拆包後的所有檔案放置在該目錄底下。注意,該目錄必須在拆包前就存在。
範例如:tar -x -z -C dir_pack -f pack.tar.gz
留言列表