Linux-壓縮和打包
壓縮、解壓縮及歸檔工具
file-roller
compress/uncompress: .Z
gzip/gunzip: .gz
bzip2/bunzip2: .bz2
xz/unxz: .xz
zip/unzip
tar
cpio
compress/uncompress
compress [-dfvcVr] [-b maxbits] [file ...]
-d: 解壓縮,相當於uncompress
-c: 結果輸出至標準輸出,不刪除原文件
-v: 顯示詳情
uncompress 解壓縮
zcat file.Z >file
gzip/gunzip
gzip [OPTION]... FILE ...
-d: 解壓縮,相當於gunzip
-c: 將壓縮或解壓縮的結果輸出至標準輸出
-#:1-9,指定壓縮比,值越大壓縮比越大
zcat:不顯式解壓縮的前提下查看文本文件內容
實例:
gzip -c messages >messages.gz
gzip -c -d messages.gz > messages
zcat messages.gz > messages
bzip2/bunzip2/bzcat
bzip2 [OPTION]... FILE ...
-k: keep, 保留原文件
-d:解壓縮
-#:1-9,壓縮比,默認為9
bzcat:不顯式解壓縮的前提下查看文本文件內容
xz/unxz/xzcat
xz [OPTION]... FILE ...
-k: keep, 保留原文件
-d:解壓縮
-#:1-9,壓縮比,默認為6
xzcat: 不顯式解壓縮的前提下查看文本文件內容
zip/unzip
打包壓縮
zip -r /testdir/sysconfig /etc/sysconfig/
解包解壓縮
unzip sysconfig.zip
cat /var/log/messages | zip messages -
unzip -p message > message
tar工具
tar(Tape ARchive,磁帶歸檔的縮寫)
tar [OPTION]...
(1) 創建歸檔
tar -cpvf /PATH/TO/SOMEFILE.tar FILE...
(2) 追加文件至歸檔:
tar -r -f /PATH/TO/SOMEFILE.tar FILE...
(3) 查看歸檔文件中的文件列表
tar -t -f /PATH/TO/SOMEFILE.tar
(4) 展開歸檔
tar -x -f /PATH/TO/SOMEFILE.tar
tar -x -f /PATH/TO/SOMEFILE.tar -C /PATH/
(5) 結合壓縮工具實現:歸檔並壓縮
-z: gzip, -j: bzip2, -J: xz
-T選項指定輸入文件,-X選項指定包含要排除的文件列表
tar zcvf mybackup.tgz -T /root/includefilelist -X /root/excludefilelist
分割大的 tar 文件為多份小文件:
split -b Size -d tar-file-name prefix-name
split -b 1M -d mybackup.tgz mybackup-parts
split -b 1M mybackup.tgz mybackup-parts
合並:
cat mybackup-parts* > mybackup.tar.gz
cpio
功能:復制文件從或到歸檔
cpio命令是通過重定向的方式將文件進行打包備份,還原恢復的工具,它可以解壓以“.cpio”或者“.tar”結尾的文件
cpio [選項] > 文件名或者設備名
cpio [選項] < 文件名或者設備名
選項
-o 將文件拷貝打包成文件或者將文件輸出到設備上
-i 解包,將打包文件解壓或將設備上的備份還原到系統
-t 預覽,查看文件內容或者輸出到設備上的文件內容
-v 顯示打包過程中的文件名稱。
-d 解包生成目錄,在cpio還原時,自動的建立目錄
-c 一種較新的存儲方式
示例
將etc目錄備份:
find /etc -print |cpio -ov > etc.cpio
內容預覽
cpio -tv < etc.cpio
解包文件
cpio -idv < etc.cpio
壓縮比排序
Z
gz
bz2
xz
這4個工具只能針對文件進行壓縮,zip和tar才能打包,不裝winrar的話zip在windows也能用
tar -cpvf
-c 創建
-p 保存屬性
-v 看過程
-f
Linux-壓縮和打包