1. 程式人生 > >Linux之壓縮工具

Linux之壓縮工具

tgz 1.5 圖片 顯示 復制 標準輸入 text 重定向 type

gzip用法

>壓縮
gzip -c messages > m.gz
cat messages | gzip > m2.gz
lscpu | gzip > cpu.gz
>查看壓縮內容
zcat m2.gz
>解壓縮
gzip -c -d m.gz > m2
gunzip cpu.gz
zcat m2.gz > messages

bizp2用法

>壓縮
bizp2 -c message > m.bz2
bzip2 -k messages
cat messages| bzip2 > m4.bz2
lscpu | bzip2 > cpu.bz2
>查看壓縮內容


bzcat file.bz2
>解壓縮
bzip2 -c -d messages.bz2 > m3
bunzip2 messages.bz2
bzcat cpu.bz2 > cpu2

xz用法

>壓縮
xz -c messages > m5.xz
xz -k messages
cat messages | xz > m6.xz
lscpu | xz > m7.xz
>查看壓縮內容
xzcat m7.xz
>解壓縮
xz -c -d messages.xz > m4
unxz messages.xz
xzcat cpu.xz > cpu3

zip用法

>打包/etc/sysconfig/文件夾


zip -r /data/sysconig /etc/sysconfig/
cat /var/log/messages | zip messages -
>解包
unzip -p sysconfig.zip > sysconfig

tar用法

>創建歸檔 -p保留權限 -v顯示壓縮過程 -f指向文檔

tar -cpvf /PATH/FILE.tar FILE...
tar -cpvf mm.tar mm
>向包中追加文件
tar -r -f /PATH/FILE.tar FILE...
tar -r -f mm.tar cpu.*
>查看包中的文件
tar -t -f mm.tar
>解包 -C指定解壓路徑


tar -x -f mm.tar -C /data
tar -x -f mm.tar
>結合壓縮工具實現:歸檔並壓縮
-j: bzip2, -z: gzip, -J: xz
tar -jcvf mm.tar.bz2 mm
tar -zcvf mm.tar.gz mm
tar -Jcvf mm.tar.xz mm
>排除部分文件並打包壓縮 --exclude
tar zcvf mm2.tar.gz --exclude=mm/m.gz --exclude=mm/m3.bz2 mm
>-T 選項指定輸入文件 -X 選項指定包含要排除的文件列表
tar zcvf mybackup.tgz -T /root/includefilelist -X /root/excludefilelist /root
>分割壓縮打包文件 -d選項指定分片後綴為數字,否則為字母
split -b 1M -d mm.tar.bz2 mmm
技術分享圖片
>合成分割文件
cat mmm* > mybacup.tar.gz
技術分享圖片

cpio打包與解包

功能:復制文件從或到歸檔
cpio命令是通過重定向的方式將文件進行打包備份,還原恢復的工具,它可以解壓以“.cpio”或者“.tar”結尾的文件
cpio [選項] > 文件名或者設備名
cpio [選項] < 文件名或者設備名
選項
-o 將文件拷貝打包成文件或者將文件輸出到設備上
-O filename 輸出到指定的歸檔文件名
-A 向已存在的歸檔文件中追加文件
-i 解包,將打包文件解壓或將設備上的備份還原到系統
-I filename 對指定的歸檔文件名解壓
-t 預覽,查看文件內容或者輸出到設備上的文件內容
-F filename 使用指定的文件名替代標準輸入或輸出
-d 解包生成目錄,在cpio還原時,自動的建立目錄
-v 顯示打包過程中的文件名稱
示例
將etc目錄備份:
find ./etc -print |cpio -ov >bak.cpio
將/data內容追加bak.cpio
find /data | cpio -oA -F bak.cpio
內容預覽
cpio –tv < etc.cpio
解包文件
cpio –idv < etc.cpio

Linux之壓縮工具