Linux文档的压缩与打包

  • Linux文档的压缩与打包

  • 概述

  • compress和uncompress

  • gzip压缩工具

  • bzip2压缩工具

  • zip压缩工具

  • tar压缩工具

  • cpio压缩工具(主要用来备份还原)

Linux文档的压缩与打包

概述

本章将介绍Linux系统中的压缩和解压缩的工具,以及归档工具(tar,cpio)

compress/uncompress:    //对应 .Z 结尾的压缩格式文件;
gzip/gunzip:            //其对应的是 .gz 结尾的压缩格式文件;
bzip2/bunzip2:          //其对应的是 .bz2 结尾的压缩格式文件;
zip/unzip               //其对应的是 .zip 结尾的压缩格式文件
tar                     //可以为目录打包,指定以上的所有压缩格式

compress和uncompress

语法:compress [-dfvcVr] [-b maxbits] [file …]

-d: 解压缩,相当于 (可以配合 -c 保留压缩文件) 
-c: 结果输出至标准输出,不删除原文件 
-v: 显示详情

[root@localhost ~]# cd /tmp 
[root@localhost tmp]# cp /etc/man.config .
[root@localhost tmp]# compress man.config

//uncompress解压缩
[root@localhost tmp]# uncompress man.config.Z

gzip压缩工具

语法: gzip [-d#] filename 其中#为1-9的数字

“-d” : 解压缩时使用 
“-#” : 压缩等级,1压缩最差,9压缩最好,6为默认

[root@localhost tmp]# gzip  man.config  //压缩文件
[root@localhost tmp]# ls
ks-script-BKWeFw  ks-script-BKWeFw.log  man.config.gz  yum.log
[root@localhost tmp]# gzip -d man.config.gz  //解压文件
[root@localhost tmp]# ls
ks-script-BKWeFw  ks-script-BKWeFw.log  man.config  yum.log
//gzip 是不支持压缩目录的。

bzip2压缩工具

语法: bzip2 [-dz] filename

bzip2 只有两个选项需要你掌握。 
“-d” : 解压缩 
“-z” : 压缩 
"-k": keep, 保留原文件 
压缩时,可以加“-z” 也可以不加,都可以压缩文件,”-d” 则为解压的选项:

[root@localhost tmp]# bzip2 man.config  //压缩文件
[root@localhost tmp]# ls
ks-script-BKWeFw  ks-script-BKWeFw.log  man.config.bz2  yum.log
[root@localhost tmp]# bzip2 -d man.config.bz2  //解压文件
[root@localhost tmp]# ls
ks-script-BKWeFw  ks-script-BKWeFw.log  man.config  yum.log
//bzip2 同样是不支持压缩目录的。

zip压缩工具

zip命令可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有“.zip”扩展名的压缩文件。

将/home/Blinux/html/这个目录下所有文件和文件夹打包为当前目录下的html.zip:

[root@localhost /]# zip -q -r home.zip /home/

unzip命令用于解压缩由zip命令压缩的“.zip”压缩包。

[root@localhost /]# unzip home.zip 

tar压缩工具

tar 本身为一个打包工具,可以把目录打包成一个文件,它的好处是它把所有文件整合成一个大文件整体,方便拷贝或者移动。

语法:tar [-zjxcvfpP] filename tar 命令有多个选项

常用选项 
“-z” : 同时用gzip压缩 
“-j” : 同时用bzip2压缩 
“-x” : 解包或者解压缩 
“-t” : 查看tar包里面的文件 
“-c” : 建立一个tar包或者压缩文件包 
“-v” : 可视化 
“-f” : 后面跟文件名,压缩时跟 “-f 文件名”,意思是压缩后的文件名为filename, 解压时跟 “-f 文件名”,意思是解压filename. 请注意,如果是多个参数组合的情况下带有 “-f”,请把 “-f” 写到最后面。

实例: 
(1) 创建归档

[root@localhost /]# tar cvzf home.tar.gz /home

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

[root@localhost /]# tar -tf home.tar.gz 

(3) 展开归档

[root@localhost /]# tar -zxvf home.tar.gz 
[root@localhost /]# tar -zxvf home.tar.gz -C /tmp/

cpio压缩工具(主要用来备份还原)

cpio命令主要是用来建立或者还原备份档的工具程序,cpio命令可以复制文件到归档包中,或者从归档包中复制文件。 cpio 命令是通过重定向的方式将文件进行打包备份,还原恢复 
的工具,它可以解压以“.cpio” 或者“.tar” 结尾的文件。

cpio [ 选项] >  文件名或者设备名
cpio [ 选项] <  文件名或者设备名

选项 
-o 将文件拷贝打包成文件或者将文件输出到设备上 
-i 解包,将打包文件解压或将设备上的备份还原到系统 
-t 预览,查看文件内容或者输出到设备上的文件内容 
-v 显示打包过程中的文件名称。 
-d 解包生成目录,在cpio 还原时,自动的建立目录 
-c 一种较新的存储方式 
-B:将输入/输出的区块大小改成5210Bytes;

将/etc下的所有普通文件都备份到/opt/etc.cpio,使用以下命令:

find /etc –type f | cpio –ocvB >/opt/etc.cpio

内容预览

[root@localhost tmp]# cpio -tv < /opt/etc.cpio 

备份包还原到相应的位置,如果有相同文件进行覆盖,使用以下命令:

[root@localhost tmp]# cpio -icduv < /opt/etc.cpio

原创文章,作者:M20_he,如若转载,请注明出处:http://www.178linux.com/43745

(0)
上一篇 2016-09-06 08:51
下一篇 2016-09-06 08:51

相关推荐

  • iptables总结

    iptables简称为包过滤型防火墙一般分为2种:     1,主机防火墙:主机防火墙是用来防止本主机内的应用服务被攻击所需要保护的防火墙     2,网络防火墙:做为想路由功能的防火墙凡是进过此服务器的数据包都要进行规则匹配 iptables的架构由功能和链组成  &…

    Linux干货 2016-12-05
  • N25-第十周

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 一、内核空间详细过程如下: POST –> BootSequence(BIOS) –> Bootloader(MBR) –> kernel(ramdisk) –> rootfs(只读) –> /sbin/init(systemd) 1.POST:(pow…

    Linux干货 2017-05-30
  • MySQL Replication (MySQL的主从复制)

    MySQL Replication(MySQL的主从复制) 主从数据库的工作模型: 工作要点:1、主服务器要开启二进制日志 2、从服务器要有一个用户账户,这个账户要有权限到主服务器上请求二进制事件,请求完后保存到本地。 3、从服务器上要有一个线程,从中继日志中不断的读事件,在本地replay。 Master/Slave    &…

    Linux干货 2016-11-21
  • mkdir练习

    课外资料 mkdir命令用来创建目录。该命令创建由dirname命名的目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。 注意:在创建文件时,不要把所有的文件都存放在主目录中,可以创建子目录,通过它…

    Linux干货 2016-08-08
  • 记马哥教育第30期Linux云计算面授班开班典礼

    记马哥教育第30期Linux云计算面授班开班典礼

    2018-03-26
  • Linux用户操作、文件操作、文件筛选

    Linux用户操作、文件操作、文件筛选 编辑/etc/group文件,添加组hadoop。手动编辑/etc/passwd文件新增一行,添加用户hadoop,其基本组ID为hadoop组的id号;其家目录为/home/hadoop。 vim /etc/group hadoop:x:1001: vim /etc/passwd hadoop:x…

    Linux干货 2016-11-17