Sreekanth Kuruba

在 Linux 中處理檔案不只是建立與編輯。

有時候你需要:

  • 將多個檔案封裝成單一檔案
  • 壓縮檔案以節省磁碟空間
  • 與他人分享檔案
  • 建立備份

Linux 提供了多種工具,各有不同用途。

讓我們簡單說明。


什麼是檔案壓縮?

檔案壓縮會減少檔案的大小。

好處:

  • 節省磁碟空間
  • 加快檔案傳輸
  • 更容易備份
  • 減少頻寬使用

範例:

一個 100 MB 的日誌檔可能會變成小很多的壓縮檔,視檔案內容而定。


封裝 vs 壓縮

許多初學者認為兩者相同。

其實不然。

封裝(Archive)

將多個檔案合併成單一檔案。

範例:

photos/
docs/
notes.txt

↓

backup.tar

Enter fullscreen mode Exit fullscreen mode

壓縮(Compression)

減少檔案的大小。

範例:

backup.tar

↓

backup.tar.gz

Enter fullscreen mode Exit fullscreen mode

👉 tar 用於封裝檔案,gzip 用於壓縮。


1. 使用 tar 建立封裝檔

tar -cvf backup.tar Documents/    #建立封裝檔
tar -tvf backup.tar               #檢視封裝檔內容
tar -xvf backup.tar               #解開封裝檔

Enter fullscreen mode Exit fullscreen mode

選項:

  • c → 建立
  • v → 詳細模式(顯示進度)
  • f → 指定檔名
  • x → 解開

適用於:

  • 備份
  • 打包多個檔案
  • 移動資料夾

2. 使用 gzip 壓縮

壓縮檔案:

gzip file.txt          # 建立 file.txt.gz
# 結果
file.txt.gz
gunzip file.txt.gz     # 解壓縮
gzip -k file.txt       # 保留原始檔案

Enter fullscreen mode Exit fullscreen mode

適用於:

  • 日誌檔
  • 大型文字檔
  • 節省磁碟空間

3. 同時封裝與壓縮

最常用的指令:

# 建立壓縮封裝檔
tar -czvf backup.tar.gz Documents/
# 解開
tar -xzvf backup.tar.gz

Enter fullscreen mode Exit fullscreen mode

選項:

  • z → 使用 gzip 壓縮

👉 這是 Linux 中最常見的備份指令之一。


4. 處理 ZIP 檔案

# 建立 ZIP
zip -r project.zip project/
# 解開
unzip project.zip
# 列出內容
unzip -l project.zip

Enter fullscreen mode Exit fullscreen mode

適用於:

  • 與 Windows 使用者分享檔案
  • 跨平台相容性

5. 工具比較

工具 用途 適用情境
tar 封裝檔案 備份
gzip 壓縮檔案 節省空間
tar + gzip 封裝與壓縮 Linux 備份
zip 封裝與壓縮 跨作業系統分享檔案

實際範例

你在修改網站前需要備份。

# 建立備份
tar -czvf website-backup.tar.gz /var/www/html
# 稍後需要還原
tar -xzvf website-backup.tar.gz

Enter fullscreen mode Exit fullscreen mode

這是在升級、移轉或修改設定前常見的做法。


常見新手錯誤

  • 以為 tar 本身就會壓縮檔案
  • 建立 .tar.gz 封裝檔時忘記加上 -z
  • 壓縮已經壓縮過的檔案(如 .jpg.mp4
  • 解開封裝檔到錯誤的目錄
  • 在確認能還原前就刪除備份

簡單心智模型

想像打包行李:

  • tar → 把所有衣服放進一個行李箱。
  • gzip → 把行李箱壓縮變小。
  • tar.gz → 把所有東西放進一個行李箱並壓縮。
  • zip → 一個幾乎任何作業系統都能輕鬆分享的行李箱。

總結

在本指南中你學到:

  • 什麼是檔案壓縮
  • 封裝與壓縮的差異
  • 使用 tar 建立封裝檔
  • 使用 gzip 壓縮檔案
  • 建立 .tar.gz 封裝檔
  • 處理 ZIP 檔案
  • 常見的新手錯誤

為什麼重要

每天都有下列人員使用檔案壓縮:

  • Linux 系統管理員
  • DevOps 工程師
  • 雲端工程師
  • 開發人員

無論是建立備份、傳輸檔案或節省磁碟空間,了解這些工具都是重要的 Linux 技能。


恭喜!
你已完成 Linux 基礎的重要部分。

在下一篇也是最後一篇文章中,我們將把本系列學到的所有知識整合成實用的疑難排解流程,讓你能自信地診斷 Linux 問題。

下一篇

給初學者的 Linux 疑難排解流程


給你的問題

你最常使用的壓縮格式是 .tar.gz 還是 .zip?在什麼情境下使用?