Linux-tar



Linux-tar

1. tar簡介
2. tar文件
3. tar常用選項
4. tar基本用法(不壓縮)
5. tar特殊用法

1. tar簡介

https://zh.wikipedia.org/wiki/Tar
Unix和類Unix系統上的壓縮打包工具,可以將多個文件合並為一個文件,打包后的文件名亦為“tar”。目前,tar文件格式已經成為POSIX標准,最初是POSIX.1-1988,目前是POSIX.1-2001。本程序最初的設計目的是將文件備份到磁帶上(tape archive),因而得名tar。

2. tar文件

tar代表未壓縮的tar文件。已壓縮的tar文件則附加壓縮文件的擴展名,如經過gzip壓縮后的tar文件,擴展名為“.tar.gz”。
由於受到DOS8.3文件名格式的限制,常使用下列縮寫:

tar選項 縮寫后綴 完整后綴 壓縮命令 解壓命令1 解壓命令2
-j, *.tb2; tbz *.tar.bz2; *.tar.bz bzip2 -z bzip2 -d bunzip2
-z, *.tgz *.tar.gz gzip gzip -d gunzip
-Z, *.taz *.tar.Z compress uncompress  
-J, *.txz *.tar.xz      
--lzma *.tlz *.tar.lzma      

 

3. tar常用選項

主要操作方式:

-c, --create 創建一個新的存檔
-t, --list 列出檔案的內容
-x, --extract, --get 從存檔中提取文件
-r, --append 將文件附加到存檔的末尾
-u, --update 只附加比歸檔中的副本更新的文件
-A, --catenate, --concatenate 將tar文件作為整體追加到另一個tar文件中
-d, --diff, --compare 找到存檔和文件系統之間的差異
  --delete 從檔案中刪除(不在磁帶上!)
  --test-label 測試存檔卷標並退出


壓縮選項:

-j, --bzip2 通過bzip2過濾存檔
-z, --gzip, --gunzip, --ungzip 通過gzip過濾存檔
-Z, --compress, --uncompress 通過壓縮過濾存檔
-J, --xz 通過xz過濾存檔
  --lzma 通過lzma過濾存檔
  --lzip 通過lzip過濾存檔
  --lzop 通過lzop過濾存檔
  --zstd 通過zstd過濾存檔
-a, --auto-compress 使用存檔后綴來確定壓縮程序
  --no-auto-compress 不要使用存檔后綴來確定壓縮程序


其他常用選項:

  Device selection and switching:  
-f, --file=ARCHIVE 使用存檔文件或設備存檔. 
可以用"-"代表標准輸出或標准輸入。
  Informative output:  
-v, --verbose 詳細列出已處理的文件
  Overwrite control:  
-k, --keep-old-files 提取時不要替換現有文件,將它們視為錯誤
  Local file selection:  
-P, --absolute-names 不要從文件名中刪除前導'/'。即絕對路徑

 

4. tar基本用法

不壓縮
-c 打包 $ tar -cvf archive.tar file1 file2
-t 查看 $ tar -tvf archive.tar
-x 解包 $ tar -xvf archive.tar

增加壓縮,只需要參照上面的選項,添加對應的壓縮選項即可。

5. tar特殊用法

使用tar復制文件夾
$ tar cf – toma | (cd targer; tar xvf -)
高效的復制了toma中的文件和目錄,還保留了權限。注: 'f'后邊跟'-',從stdin讀取數據.

解開C源碼包的注意事項
軟件源碼包,通常是tar的壓縮包。解包前先用tvf選項+壓縮選項檢查源碼包內容。
1. 有些源碼包解開時不會建立自己的總目錄,會把全部放到當前目錄下。這種要進入手動建立的文件夾后再解包。
2. 要留意那些包含絕對路徑名的文件。可能包含木馬或一些惡意代碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM