大数据讲课笔记1.6 压缩与打包
Posted howard2005
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据讲课笔记1.6 压缩与打包相关的知识,希望对你有一定的参考价值。
文章目录
零、学习目标
- 了解打包与压缩概念
- 使用gzip命令进行压缩与解压文件
- 使用tar命令对目录进行打包和解压
一、导入新课
- 在 Linux 中,学会对文件或目录进行打包(归档)和压缩,是每个初学者的基本技能。打包指的是将多个文件和目录集中存储在一个文件中;而压缩则指的是利用算法对文件进行处理,从而达到缩减占用磁盘空间的目的。
二、新课讲解
(一)压缩与打包
1、压缩
- 压缩是指通过某些算法,将文件尺寸进行相应的缩小,然而同时又不损失文件的内容。常见的压缩命令有compress、gzip、bz2、zip。
2、打包
- 指将多个文件(或目录)合并成一个文件,方便在不同节点之间传递或在服务器集群上部署。tar是常用的打包命令。
3、压缩或打包文件常见扩展名
- *.tar, *.tar.gz, *.gz, *.bz2, *.Z;Linux系统一般文件的扩展名用途不大,但是压缩或打包文件的扩展名时必须的,因为Linux支持的压缩命令较多,不同的压缩技术使用的压缩算法区别较大,根据扩展名能够使用对应的解压算法。
(二)gzip命令
1、命令作用
- 压缩文件有两个好处,一可减少存储空间,二可减少网络传输时间。
- gzip 是在 Linux 系统中经常使用的一个对文件进行压缩和解压缩的 命令,既方便又好用。
2、选项参数
参数 | 作用 |
---|---|
-c | (compress)将压缩的数据输出到标准输出(stdout)上 |
-d | (decompress)解压缩 |
-t | (test)可以用来检验一个压缩文件的一致性,看看文件有无错误 |
-v | (verbose)可以显示出原文件/压缩文件的压缩比等信息 |
-(1,2,…,9) | 压缩等级,1最快,但是压缩比最差;9最慢,但是压缩比最好,默认是6。 |
-l | (list)查看压缩文件的压缩比:gzip -l *.gz |
3、实战练习
任务1、压缩文件
- 在
/tmp
目录里创建part1
目录
- 将
/root
目录里的anaconda-ks.cfg
拷贝到/tmp/part1
目录
- 进入
/tmp/part1
目录,压缩文件,显示压缩比信息
- 压缩之后,原文件删除,只有压缩文件
任务2、解压文件
- 解压缩之后,压缩文件删除,生成原文件
- 默认压缩比参数是6
(三)tar命令
1、命令作用
- tar命令可以为Linux的文件和目录创建归档。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。利用tar命令,可以把一大堆文件和目录全部打包成一个文件,这对于备份文件或者将几个文件组合成一个文件以便于网络传输。
2、选项参数
参数 | 作用 |
---|---|
-c | (create)建立打包文件 |
-t | 查看打包文件的内容含有哪些文件 |
-x | 解打包或解压缩的功能,可以搭配-C(大写)在特定目录解开 |
-j | 通过bzip2的支持进行压缩/解压缩,此时文件最好为*.tar.bz2 |
-z | 通过gzip的支持进行压缩/解压缩,此时文件最好为*.tar.gz |
-v | 在压缩/解压缩的过程中,将正在处理的文件名显示出来 |
-f | (filename)-f 后面跟处理后文件的全名称(路径+文件名+后缀名) |
-C | 目录:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项 |
-p | 保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件 |
–exclude=FILE | 在压缩的过程中,不要将那些文件打包 |
- 注意:-c、-t、-x不可同时出现在一串指令列中。
3、实战练习
任务1、生成打包文件
- 清空
/tmp/part1
目录
- 将/etc目录拷贝到/tmp/part1目录里
- 将etc目录打包压缩成gz格式,要求显示压缩详情,执行命令:
tar -czvf etc.tar.gz etc
- 查看生成的打包文件(原目录依然存在)
任务2、将打包文件解压到当前目录
- 先删除etc目录
- 解压缩
etc.tar.gz
到当前目录,执行命令:tar -xzvf etc.tar.gz
- 查看当前目录,打包文件和解压之后的目录都存在
- 查看etc目录树
任务3、将打包文件解压缩到指定目录
- 执行命令:
tar -xzvf etc.tar.gz -C /home
,将打包文件解压到/home
目录
- 查看
/home/etc
目录树
任务4、解压打包文件里某个目录
- 删除
etc
目录
- 仅仅解压缩
etc.tar.gz
里的某个目录,例如etc/udev
,执行命令:tar -xzvf etc.tar.gz etc/udev
- 查看解压的
etc
目录树
三、归纳总结
- 回顾本节课所讲的内容,并通过提问的方式引导学生解答问题并给予指导。
四、上机操作
- 形式:单独完成
- 题目:进行压缩和打包
- 要求:按照讲课笔记完成
课堂练习1
- 在/tmp文件夹下创建/part1/gzip
- 将/root/anaconda-ks.cfg文件拷贝到/tmp/part1/gzip
- 将拷贝后的文件进行gzip压缩,并显示压缩信息。
- 将压缩后文件的名称改为mygzip01.gz
- 解压缩mygzip01.gz文件
课堂练习2
- 在/etc/home目录里创建test目录
- 在test目录里利用vim创建三个文件test1.txt、test2.txt与test3.txt
- 利用tar命令将test目录打包成test.tar.gz
以上是关于大数据讲课笔记1.6 压缩与打包的主要内容,如果未能解决你的问题,请参考以下文章