RHEL的归档及压缩

本章主要介绍如何将RHEL的文件进行归档和压缩

使用tar对多个文件进行归档
使用gzip对文件进行压缩和解压
使用bzip2对文件进行压缩和解压
使用tar结合gzip实现文件的归档和压缩
使用tar结合bzip2实现文件的归档和压缩
1.1归档
为了方便文件在网络上传输,我们需要把多个文件打包成一个文件(归档)

tar的语法如下:

tar cvf aa.tar file1 file2 file3
c的意思是创建归档
v的意思是创建归档时显示被归档的文件,为了简化输出,可以不加v选项
f用于指定归档文件
这里的意思是把file1、file2、file3归档到aa.tar中


归档文件一般使用tar后缀

先做准备,拷贝几个文件到当前目录

然后把hosts、passwd、services三个文件归档成一个文件abc.tar


这里归档文件是abc.tar,查看它的大小

[root@Hal55 ~]# ls -lh passwd services hosts abc.tar


可以看到,abc.tar文件的大小比三个文件大小的总和还大,说明用tar只有归档功能,并没有压缩功能

从上面的操作可以看出,当创建好归档文件后,源文件还是在的,即把 hosts、 passwd,services归档到abc.tar中之后,这三个文件依然存在。如果希望归档之后同时删除源 文件,可以加上--remove-files选项

删除abc.tar,然后再次归档

[root@Hal55 ~]# rm -rf abc.tar
[root@Hal55 ~]# tar cf abc.tar hosts passwd services --remove-files


可以看到,三个文件归档到abc.tar中之后就被删除了

查看归档文件中有哪些文件,可以使用t选项

[root@Hal55 ~]# tar -tf abc.tar


想在归档文件中追加一个文件用r选项

[root@Hal55 ~]# tar rf abc.tar anaconda-ks.cfg 


这里已经把anaconda-ks.cfg 写入abc.tar中了

对归档文件进行解档,解档的语法如下

tar xvf abc.tar
这里x表示解档
v显示解档出来的文件,为了简化输出,v选项可以不写
f用于指定归档文件


练习:把abc.tar解档

[root@Hal55 ~]# tar xf abc.tar 


可以看到,解档时默认为解档到当前目录。如果要解档到指定的目录,需要加上“-C指 定目录”,现在要把abc.tar解档到/opt目录中

[root@Hal55 ~]# ls /opt/
[root@Hal55 ~]# tar xf abc.tar -C /opt/


然后清空/opt目录的内容

[root@Hal55 ~]# rm -rf /opt/*
[root@Hal55 ~]# ls /opt/
[root@Hal55 ~]# 


当然也可以只解档abc.tar中的某一个文件,只要在正常解档命令后面加上要解档的文件即 可

把abc.tar中的hosts解档出来放在/opt中

[root@Hal55 ~]# tar xf abc.tar -C /opt/ hosts
[root@Hal55 ~]# ls /opt/
hosts

1.2 压缩
前面讲tar只是归档,并没有压缩功能。要是想压缩,有专门的工具,如 gzip、bzip2、 zip

先创建一个测试文件

[root@Hal55 ~]# dd if=/dev/zero of=file bs=1M count=100


(1)f是读取哪里的内容,这里是/dev/zero

(2)of是组成的文件名

(3)count指定zero的数目

(4)bs指定每个zero的大小,如果没有指定单位则默认为B

这里的意思是拿100个大小为1M的/dev/zero组成一个名称叫file的文件,此file的大小应 该是100M

1.2.1 gzip的用法
gzip用法如下

压缩:gzip file,压缩出来的文件后缀为gz
解压:gzip ‐d file.gz

使用gzip对file进行压缩

[root@Hal55 ~]# gzip file 


可以看到,file原来100M,压缩成file.gz的大小只有100K。因为file文件过于简单,所以 压缩率很高

用gzip把file.gz解压

[root@Hal55 ~]# gzip -d file.gz 

把file归档并压缩到abc.tar.gz中

[root@Hal55 ~]# tar zcf abc.tar.gz file


解压tar.gz格式的文件用tar zxf abc.tar.gz

这里z表示调用gzip,与x一起使用就表示解压


1.2.2 bzip2的用法
bzip2也是常用的压缩工具

1.  压缩:bzip2 file,压缩出来的文件后缀为bz2
2.  解压:bzip2 ‐d fle.bz2
使用bzip2对file进行压缩

[root@Hal55 ~]# bzip2 file


这里把100M的file压缩到1K以下。因为file文件过于简单,所以压缩率很高

使用bzip2进行解压

[root@Hal55 ~]# bzip2 -d file.bz2

一般情况下,tar 和 bzip2结合在一起使用

 tar jcf abc.tar.gz file1 file2 file3

在tar选项中加j表示调用bzip2,i和c一起使用就表示压缩,后缀一般为tar.bz2。这句话 的意思是把file1、file2、file3 归档并压缩到abc.tar.bz2中

[root@Hal55 ~]# tar jcf abc.tar.bz2 file

解压tar.bz2格式的文件用tar jxf abc.tar.bz2

这里 j 表示调用bzip2,与x一起使用就表示解压

[root@Hal55 ~]# rm -rf file
[root@Hal55 ~]# tar jxf abc.tar.bz2 

1.2.3 zip的用法
zip是常用的压缩工具,在 Windows 中也经常使用。zip的用法如下

1. 压缩文件: zip aa.zip file,把file压缩到aa.zip中
2. 压缩目录:zip ‐r bb.zip dir,把目录dir压缩到bb.zip中
如果解压zip格式的压缩文件,则用unzip命令

unzip abc.zip

把file压缩到aa.zip中

zip abc.zip file


解压zip格式的压缩文件

unzip abc.zip

  • 10
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值