在 Linux 終端機處理檔案打包、壓縮、解壓縮是基本功。本文整理 tar、gzip、bzip2、xz、zip、rar、7z 等常見工具的核心參數與實用範例,方便隨時查閱。
| 參數 | 說明 |
|---|---|
-c | 建立新打包檔 |
-x | 解開打包檔 |
-t | 列出打包檔內容 |
-r | 向打包檔末尾追加檔案 |
-u | 更新打包檔中已有檔案 |
-z | 搭配 gzip 壓縮/解壓縮(.tar.gz / .tgz) |
-j | 搭配 bzip2 壓縮/解壓縮(.tar.bz2) |
-J | 搭配 xz 壓縮/解壓縮(.tar.xz) |
-v | 顯示詳細過程 |
-f | 指定檔案名(必須放最後) |
# 打包並 gzip 壓縮 tar -czvf backup.tar.gz /home/user/data # 解壓縮 tar.gz tar -xzvf backup.tar.gz # 僅列出內容不解壓 tar -tzvf backup.tar.gz # 打包並 xz 壓縮(壓縮率最高) tar -cJvf backup.tar.xz /home/user/data # 解壓縮 tar.xz tar -xJvf backup.tar.xz
# 壓縮(保留原檔加 -k) gzip -k file.txt # 解壓縮 gunzip file.txt.gz # 或 gzip -d file.txt.gz # 直接查看壓縮檔內容不解壓 zcat file.txt.gz
# 壓縮 bzip2 -k file.txt # 解壓縮 bunzip2 file.txt.bz2 # 查看內容 bzcat file.txt.bz2
# 壓縮 xz -k file.txt # 解壓縮 unxz file.txt.xz # 查看內容 xzcat file.txt.xz
# 壓縮目錄遞歸 zip -r archive.zip /path/to/dir # 解壓縮 unzip archive.zip # 僅列出內容 unzip -l archive.zip
# 壓縮 rar a archive.rar /path/to/dir # 解壓縮 unrar x archive.rar
# 壓縮 7z a archive.7z /path/to/dir # 解壓縮 7z x archive.7z
| 副檔名 | 解壓縮指令 |
|---|---|
| .tar | tar -xvf |
| .gz | gunzip / gzip -d |
| .tar.gz / .tgz | tar -xzvf |
| .bz2 | bunzip2 / bzip2 -d |
| .tar.bz2 | tar -xjvf |
| .xz | unxz / xz -d |
| .tar.xz | tar -xJvf |
| .zip | unzip |
| .rar | unrar x |
| .7z | 7z x |
小撇步:現代 tar 多支援自動偵測壓縮格式,直接用 tar -xvf filename 即可自動處理 .gz、.bz2、.xz 等,無需記憶 -z/-j/-J 參數。