• 一起来学linux:压缩与解压缩


    Linux场景下一般存在如下的压缩文件格式:

    1 .Z compress程序压缩的文件

    2 *.gz gzip程序压缩的文件

    3 *.bz2 bzip2程序压缩的文件

    4 *.tar tar程序打包的文件。没有经过gzip的压缩

    5 *.tar.gz tar程序打包的文件,经过gzip的压缩

    6 *.tar.bz2 tar程序打包的文件,经过bz2的压缩

    其中现在用得最多的就是gzip以及bzip2的方式,tar其实是讲所有的文件集中到一个文件夹里面,并么有提供压缩。

    先来看下gzip的使用方式:

    -c: 将压缩的数据输出到屏幕上,

    -d:解压缩的参数

    -t: 可以用来校验文件的一致性,查看文件是否有无错误

    -v:显示出原始文件与压缩文件的压缩比

    -#:压缩等级,从19-9最慢

    root@zhf-linux:/home/zhf/zhf# gzip -v python.vim

    python.vim: 69.1% -- replaced with python.vim.gz


    再来看下bzip2的命令:

    -c: 将压缩过程产生的数据输出到屏幕上

    -d:解压缩的参数

    -k:保留原文件,而不会删除原始的文件

    -z:压缩的参数

    -v:显示压缩比

    -#:压缩等级,从19-9最慢

    用法都和gzip差不多,但是有一个不同点在于,-k, 输入这个后可以保留原文件存在。gzip没有这个功能,压缩后原文件也被删除了


    不管是gzip还是bzip2都只能对一个文件进行压缩,而不能对多个文件进行压缩。

    root@zhf-linux:/home/zhf/zhf# gzip python_prj

    gzip: python_prj is a directory – ignored


    因此这里需要用到打包命令,先将不同的文件打包到一个文件夹里面然后进行压缩。tar的参数很多,主要介绍几个重要的

    -c: 新建打包文件

    -t:查看打包文件里面有那些文件

    -x:解打包和解压缩的功能

    -j:通过bzip2进行压缩/解压缩。文件名一般为 *.tar.bz2

    -z:通过gzip进行压缩/解压缩.文件名一般为 *.tar.gz

    -v:压缩和解压缩的过程中,将正在处理的文件名显示出来

    -f:要被处理的文件名

    -C:特定目录解压缩

    -p:保留备份数据的权限与属性


    命令如下, -f 首先是将要被压缩的文件名,然后是需要压缩的文件夹

    root@zhf-linux:/home/zhf/zhf# tar -zpcv -f /home/zhf/zhf/test.tar.gz /home/zhf/zhf/test

    tar: Removing leading `/' from member names

    /home/zhf/zhf/test/

    /home/zhf/zhf/test/test2/


    同样查看的时候也可以看对对应文件里面的权限。

    root@zhf-linux:/home/zhf/zhf# tar -ztv -f /home/zhf/zhf/test.tar.gz

    drwxr-xr-x root/root 0 2017-08-28 21:34 home/zhf/zhf/test/

    drwxr-xr-x root/root 0 2017-08-28 21:34 home/zhf/zhf/test/test2/


    同样的如果想用bz2的方式,命令改成tar -jpcv -f /home/zhf/zhf/test.tar.gz /home/zhf/zhf/testtar -jtv -f /home/zhf/zhf/test.tar.gz就可以了

    对应的解压缩方式:或者是tar -jxvf test.tar.bz2

    root@zhf-linux:/home/zhf/zhf# tar -zxvf test.tar.gz

    home/zhf/zhf/test/

    home/zhf/zhf/test/test2/



    再来看另外一个命令dddd的主要作用在于备份文件或者是分区的内容:

    比如备份一个文件

    root@zhf-linux:/home/zhf/zhf# dd if=/home/zhf/zhf/test.txt of=/home/zhf/test.back

    0+0 records in

    0+0 records out

    0 bytes copied, 0.000470738 s, 0.0 kB/s

  • 相关阅读:
    数1的个数
    找水王2
    书店促销
    返回一个二维整数数组中最大联通子数组的和
    敏捷软件开发读书笔记(三)
    软件工程团队开发——第一次冲刺会议总结
    返回一个二维整数数组中最大联通子数组的和
    结对项目开发电梯调度
    《最后期限》——读书笔记03
    最后期限——阅读笔记2
  • 原文地址:https://www.cnblogs.com/zhanghongfeng/p/7473964.html
Copyright © 2020-2023  润新知