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)
M20_heM20_he
上一篇 2016-09-06 08:51
下一篇 2016-09-06 08:51

相关推荐

  • SQL优化大全

    1. 优化SQL步骤 1. 通过 show status和应用特点了解各种 SQL的执行频率        通过 SHOW STATUS 可以提供服务器状态信息,也可以使用 mysqladmin extende d-status 命令获得。 SHOW STATUS 可以根据需要显示 session 级别的统计结果和 g…

    Linux干货 2015-04-13
  • linux系统从windows xp上同步时间

    最近公司客户的调度系统GPS天文时钟出现故障,导致整个调度系统失去时间源,时间积累误差达十几分钟。去现场更换时钟很不方便,所有就想用现场的一台win xp(可上网)的远程机器做NTPserver,然后给linux系统对时。上网查了好多资料,终于找到了一个有效的解决方案,具体内容和步骤如下:首先下载一个Windows下的NTP服务软件。这个软件可以搭建wind…

    Linux干货 2015-03-27
  • UID SGID与chmod 777的一些问题

    先来看问题 问题来了:echo的行为返回是对的还是vi是对的? 现场分析: vi 和 echo 都被设置为SGID权限。 abc文件所在的父目录权限是777 echo无法写abc文件,而vi是可以的 当时被问到这个问题时,我也是一征,怎么会这样。加之SUID,SGID在企业应用很少,如此这么久早忘了一干二净,只是赶紧去补课~,但经过30MIN后依然没有找到问…

    Linux干货 2016-08-08
  • 网络班22期学习宣言

    马哥Linux运维学院 学习宣言 亲爱的小伙伴:        欢迎大家报名马哥Linux运维网络学习班,跟随马哥学习Linux技术,成就Linux大牛之梦。在这里,我们不仅可以学习到最优秀的技术课程,还可以跟着追梦的小伙伴们一起学习、一起进步。 为了督促大家一直积极认真努力的学习,请各位同学在评论区写出你的学习宣言。…

    Linux干货 2016-08-03
  • shell脚本进阶

    一、流程控制 过程式编程语言:顺序执行、选择执行、循环执行 1.1 条件语句 1.1.1 if条件选择语句  选择执行: (注意: if 语句可嵌套) v  单分支:if  判断条件;then           条件为真的分支代…

    Linux干货 2016-11-27
  • MHA–master在线修复

    本次实验基于【MHA+keepalive 高可用MYSQL集群】(续) 一、恢复背景 二、修复故障节点及MHA集群 三、提升已修复的节点为master 四、注意事项 一、恢复背景 1、设备清单 2、:percona-xtrabackup-2.3.2 (注:生产环境应定时备份;不应等到数据库DOWN后才备份,以免加剧集群的压力) 备份数据库操作: [root@…

    2017-03-01