Linux 檔案的壓縮

孤竹星發表於2015-07-16
檔案的壓縮
壓縮工具 :gzip/gunzip        .gz    不能壓縮目錄,只能壓縮檔案
               gzip 選項 檔名...
                        -#       1-9   預設6   數字越大壓縮比例就越大
                        -d        可以實現解壓的功能
                        -c        將壓縮的資料輸出到標準輸出
例項:
gzip -c messages >> messages.gz
gzip -d messages.gz
zcat 讀取壓縮的檔案

例:使用gzip壓縮,不保留原始檔
[root@bash tmp]# cd /tmp/
[root@bash tmp]# cp /var/log/messages  .
-rw-------. 1 root root 118167 Jul 10 00:02 messages
[root@bash tmp]# ls -lh
total 116K
-rw-------. 1 root root 116K Jul 10 00:02 messages
[root@bash tmp]# gzip messages 
[root@bash tmp]# ls -lh
total 28K
-rw-------. 1 root root 27K Jul 10 00:02 messages.gz

解壓縮,不保留原始檔
[root@bash tmp]# gunzip messages.gz 
[root@bash tmp]# ll -lh
total 116K
-rw-------. 1 root root 116K Jul 10 00:02 messages

保留原始檔
[root@bash tmp]# gzip -c messages  >> messages.gz
[root@bash tmp]# ll
total 172
-rw-------. 1 root root 118167 Jul 10 00:02 messages
-rw-r--r--. 1 root root  54234 Jul 10 00:10 messages.gz
[root@bash tmp]# 


[root@bash tmp]# ll
total 172
-rw-------. 1 root root 118167 Jul 10 00:02 messages
-rw-r--r--. 1 root root  54234 Jul 10 00:10 messages.gz
[root@bash tmp]# rm -rf messages
[root@bash tmp]# ll
total 56
-rw-r--r--. 1 root root 54234 Jul 10 00:10 messages.gz
[root@bash tmp]# gzip -d messages.gz 
[root@bash tmp]# ll
total 232
-rw-r--r--. 1 root root 236334 Jul 10 00:10 messages

bzip2/bunzip2   .bz2    不能壓縮目錄,只能壓縮檔案

bzip2   選項  檔名
       -#    1-9    預設是6    數字越大壓縮比例就越大
       -d    解壓縮選項
       -k    壓縮後保留原始檔

bzcat   讀取壓縮後的檔案內容

[root@bash tmp]# bzip2 messages 
[root@bash tmp]# ls
etc  messages.bz2
[root@bash tmp]# bunzip2 messages.bz2 
[root@bash tmp]# ls
etc  messages

xz/unxz   .xz    不能壓縮目錄,只能壓縮檔案
xz      選項     檔名
       -#    1-9    預設是6    數字越大壓縮比例就越大
       -d    解壓縮選項
       -k    壓縮後保留原始檔


xzcat   讀取壓縮後的檔案內容

[root@bash tmp]# xz messages 
[root@bash tmp]# ll
total 28
drwxr-xr-x. 122 root root 12288 Jul 10 00:13 etc
-rw-r--r--.   1 root root 12412 Jul 10 00:10 messages.xz
[root@bash tmp]# unxz messages.xz 
[root@bash tmp]# ll
total 244
drwxr-xr-x. 122 root root  12288 Jul 10 00:13 etc
-rw-r--r--.   1 root root 236334 Jul 10 00:10 messages

zip/unzip     .zip

zip    選項     壓縮後檔名    原始檔名
      -r       壓縮目錄必須加上(遞迴壓縮)

檔案歸檔工具:tar       .tar

建立歸檔
tar  選項   歸檔後檔名    原始檔名
-c     建立歸檔檔案
-f     指定歸檔後的檔名
-z     呼叫gzip將歸檔後的檔案進行壓縮
-j     呼叫bzip2將歸檔後的檔案進行壓縮
-J     呼叫xz將歸檔後的檔案進行壓縮


例項:tar -cf etc.tar etc/


展開歸檔
tar  選項   歸檔後檔名
-x     展開歸檔檔案
-f     指定歸檔後的檔名
-z     呼叫gzip將歸檔後的檔案進行解壓縮
-j     呼叫bzip2將歸檔後的檔案進行解壓縮
-J     呼叫xz將歸檔後的檔案進行解壓縮
-C     指定解壓的目錄

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28282660/viewspace-1735647/,如需轉載,請註明出處,否則將追究法律責任。

相關文章