Linux:压缩与解压缩

压缩与解压缩软件

  • file + FILE 可查文件后缀

  • compress (.Z) 

    compress [OPTION]... FILE ...

    -d: 解压缩,相当于uncompress

    -c: 结果输出至标准输出,不删除原文件 (利用重定向)

    -v: 显示详情

    实例:

    compress -c file1 > file1.Z (压缩后则保留原文件同时生成压缩文件)

    compress -dc file2.Z >file2 (解压缩后则保留原文件同时生成解压缩文件)

    uncompress -c file2.Z >file2

    zcat file2.Z >file2


  • gzip/gunzip (.gz)

    gzip [OPTION]... FILE ...

    -d: 解压缩,相当于gunzip

    -c: 将压缩或解压缩的结果输出至标准输出

    -#:1-9,指定压缩比,值越大压缩比越大,默认为6

    zcat:不显式解压缩的前提下查看文本文件内容 (可用于重定向)

    实例: gzip -c messages >messages.gz

    gzip -c -d messages.gz > messages

    zcat messages.gz > messages


  • bzip2/bunzip2/bzcat (.bz2)

    bzip2 [OPTION]... FILE ...

    -k: keep, 保留原文件

    -d:解压缩

    -#:1-9,压缩比,默认为9

    bzcat:不显式解压缩的前提下查看文本文件内容 (用于重定向)


  • xz/unxz/xzcat (.xz)

    xz [OPTION]... FILE ...

    -k: keep, 保留原文件

    -d:解压缩

    -#:1-9,压缩比,默认为6

    xzcat: 不显式解压缩的前提下查看文本文件内容 (用于重定向)


  • zip/unzip (.zip 可对目录打包)

    zip NEWFILE...FILE...
    例如:zip file.zip file

    打包压缩
    zip -r 新文件名及路径 需要压缩的文件夹

    实例: zip –r /data/sysconfig.zip /etc/sysconfig/ 
    (把/etc/sysconfig/这个目录压缩,存在/data目录下,名为sysconfig.zip的文件)

    解包解压缩
    unzip sysconfig.zip
    (解压缩后会自动在当前文件夹生成一个压缩时上一级路径名字的文件夹

    cat /var/log/messages | zip messages - (压缩后的名字为-)

    unzip -p message.zip > message (-p屏幕打印,可解压重定向名为message文件,否则解压后的名字为—)


  • tar工具 (Tape ARchive,磁带归档的缩写)
    常用选项
    -c 创建,打包
    -t 预览
    -x 解包
    -p 保留属性 (文件权限)
    -f(默认格式选项) 
    -v 显示过程

(1) 创建归档

tar -cpvf /PATH/TO/SOMEFILE.tar FILE...

(2) 追加文件至归档: 注:不支持对压缩文件追加

-r 把文件追加到SOMEFILE.tar中

tar -r -f /PATH/TO/SOMEFILE.tar FILE...

(3) 查看归档文件中的文件列表

tar -t -f /PATH/TO/SOMEFILE.tar

(4) 展开归档

tar -x -f /PATH/TO/SOMEFILE.tar

-C指定到/PATH目录下
tar -x -f /PATH/TO/SOMEFILE.tar -C /PATH/

(5) 结合压缩工具实现:归档打包并压缩

-j: bzip2
-z: gzip
-J: xz 
-T选项指定输入文件,-X选项指定包含要排除的文件列表
tar zcvf mybackup.tgz -T /root/includefilelist -X /root/excludefilelist

(6)分割大的 tar 文件为多份小文件:

split –b Size –d tar-file-name prefix-name 
(-d:切割完后添加数字01.02.03) split -b 1M –d mybackup.tgz mybackup-parts
split -b 1M mybackup.tgz mybackup-parts
(不添加-d为a.b.c.d)

合并:(cat 文件重定向即可
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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值