核心觀念
- tar 僅負責打包,不壓縮;需搭配壓縮工具(gzip/bzip2/xz)產生 .tar.gz、.tar.bz2 等檔案。
- 解壓縮參數通用邏輯:
x(解開) v(顯示過程) f(指定檔案);壓縮參數:c(建立) v f。
常見格式對照表
| 副檔名 | 解壓縮指令 | 壓縮指令 | 備註 |
| .tar | tar xvf file.tar | tar cvf file.tar dir/ | 純打包 |
| .gz | gunzip file.gz / gzip -d file.gz | gzip file | 單檔壓縮 |
| .tar.gz / .tgz | tar zxvf file.tar.gz | tar zcvf file.tar.gz dir/ | 最常用 |
| .bz2 | bunzip2 file.bz2 / bzip2 -d file.bz2 | bzip2 -z file | 壓縮率較高 |
| .tar.bz2 | tar jxvf file.tar.bz2 | tar jcvf file.tar.bz2 dir/ | |
| .Z | uncompress file.Z | compress file | 舊式 Unix |
| .tar.Z | tar Zxvf file.tar.Z | tar Zcvf file.tar.Z dir/ | |
| .zip | unzip file.zip | zip -r file.zip dir/ | 跨平台通用 |
| .rar | rar x file.rar | rar a file.rar dir/ | 需安裝 rar |
| .lha | lha -e file.lha | lha -a file.lha file | 日系常見 |
| .rpm | rpm2cpio file.rpm | cpio -div | rpm -ivh pkg.rpm | 解包/安裝 |
進階技巧:tar 搭配 find 批次打包
# 找出 /tmp 下 24 分鐘前建立的檔案,寫入清單
find /tmp -cmin +24 > tmp.list
# 依清單打包壓縮
tar -T tmp.list -czvf tmp.expire.tar.gz
參數速記口訣
z = gzip (.gz)
j = bzip2 (.bz2)
J = xz (.xz,現代高壓縮比)
v = 顯示過程
f = 檔案名稱(必須放最後,後面接檔名)