Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

Linux gzip 指令完整教學:壓縮、解壓、測試、列表、遞迴與壓縮等級調整

編輯:Linux 系統常見問題解答

指令優勢

  • 文字檔壓縮率 60%~70%,大幅節省儲存與傳輸頻寬。
  • Linux 系統標準工具,無相依性問題。
  • 常與 tar 搭配產生 .tar.gz。

語法

gzip [選項] [檔案或目錄]

常用選項表

短選項長選項說明
-d--decompress, --uncompress解壓縮(等同 gunzip)
-c--stdout, --to-stdout輸出至標準輸出,保留原檔
-f--force強制壓縮(覆蓋、忽略連結)
-k--keep保留原始檔案(預設壓縮後刪除原檔)
-l--list列出壓縮檔資訊(壓縮率、原始大小)
-r--recursive遞迴處理目錄下所有檔案
-t--test測試壓縮檔完整性
-v--verbose顯示處理過程
-1 ~ -9--fast ~ --best壓縮等級:1 最快/壓縮率低,9 最慢/壓縮率高,預設 6
-N--name保留原始檔名與時間戳
-q--quiet抑制警告訊息

實戰範例

1. 壓縮單一檔案(預設刪除原檔,產生 .gz)

gzip log2017.log
# 產生 log2017.log.gz

2. 保留原檔壓縮

gzip -k log2017.log
# 或
gzip -c log2017.log > log2017.log.gz

3. 解壓縮

gzip -d log2017.log.gz
# 或
gunzip log2017.log.gz

4. 解壓並顯示詳細資訊

gzip -dv *.gz

5. 列出壓縮檔資訊(不解壓)

gzip -l *.gz
# 輸出:compressed uncompressed ratio uncompressed_name

6. 測試壓縮檔完整性

gzip -t backup.tar.gz

7. 遞迴壓縮整個目錄

gzip -rv testdir/
# 產生 testdir/*.gz,目錄結構保留

8. 壓縮 tar 封存檔

gzip log.tar
# 產生 log.tar.gz

9. 調整壓縮等級

gzip -9 largefile.sql   # 最高壓縮率
gzip -1 huge.log        # 最快速度

10. 管道串流壓縮(不產生中間檔)

mysqldump db | gzip -9 > db.sql.gz
zcat db.sql.gz | mysql db

小結

gzip 是 Linux 最基礎的壓縮工具,熟記 -d 解壓、-k 保留原檔、-l 看資訊、-r 遞迴、-1/-9 調等級,搭配管道串流處理大量資料,效率極高。

Copyright © Windows教程網 All Rights Reserved