实验六 文件及目录的压缩解压缩相关命令的使用

【实验目的】

1、掌握linux压缩文件实质

2、掌握linux中压缩及解压缩指令的用法

【实验环境】

1、 标准配置PC一台

2、 linux操作系统:CentOS 7.0

3、 虚拟机软件:VMWare 14.0以上版本

【实验重点及难点】

1、压缩及解压缩指令的用法

【实验内容】

实验内容1:熟悉CentOS7的基本命令

1、gzip指令

1)用gzip压缩/tmp中的/passwd文件,并设定压缩等级为1(没有就从/etc/passwd复制一个)

gzip -1 passwd

2)解压缩该文件

gunzip passwd.gz

3)用gzip压缩/tmp中的/passwd文件,并设定压缩等级为9

cd /tmp;gzip -9 passwd

4)查看压缩后的文件内容

zcat passwd.gz

5)解压缩该文件,并定向输出为passwd

gunzip -c passwd.gz > password  -c或--stdout或--to-stdout:把解压后的文件输出到标准输出设备。

Linux压缩保留源文件的方法: 
gzip –c filename > filename.gz 
Linux解压缩保留源文件的方法: 
gunzip –c filename.gz > filename

2、bzip2指令

1)用bzip2压缩/tmp中的/passwd文件,并设定压缩等级为1

bzip2 -1 passwd

2)解压缩该文件

bunzip passwd.bz2

3)用bzip2压缩/tmp中的/passwd文件,并设定压缩等级为9

bzip2 -9 passwd

4)查看压缩后的文件内容

bzcat passwd.bz2

5)解压缩该文件,并定向输出为passwd

bunzip2 -c passwd.bz2 > passwd

3、tar指令

1)把/etc内的文件打包之后存储到/tmp下(第一个压缩文件)

tar -cvf etc1.tar /etc/

1、 -c: 建立压缩档案,打包指定目录和文件 -v:显示所有过程
参数-f是必须的

-f: 文件名:使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

2)把/etc内的文件打包并且用bzip2的方式压缩,之后存储到/tmp下(第二个压缩文件)

tar  -cjvf etc2.tar.bz2 /etc/    -j:有bz2属性的

3)把/etc内的文件打包并且用gzip的方式压缩,之后存储到/tmp下(第三个压缩文件)

tar -czvf etc3.tar.gz /etc/    -z:有gzip属性的

4)分别查看压缩后的文件中都包含哪些文件

tar -tvf etc1.tar;tar -tjvf etc2.tar.bz2;tar -tzvf etc3.tar.gz  -t:查看内容

5)解压缩第一个压缩文件

tar -xvf etc1.tar -C /tmp/etc1   -x:解压  -C:解压位置

6)把第二个压缩文件解压缩到/tmp/etc2中(没有就建一个)
tar -xjvf etc2.tar.bz2 -C /tmp/etc2

7)把第三个压缩文件中的/passwd文件解压缩到/tmp/etc3中(没有就建一个)

tar -xzvf etc3.tar.gz -C /tmp/etc2

8)备份/etc中的所有文件到/tmp中,并且保证权限不变

tar -cvpf etcp.tar /tmp  -p :使用原文件的原来属性(属性不会依据使用者而变) -P :可以使用绝对路径来压缩!

9)把/home中比2010.8.15新的文件备份到/tmp下面

tar -czvf home.tar.gz /home/ --newer-mtime 2010/8/15

10)把/etc和/root中的数据备份到/tmp下面,但是不备份/root下的initial-setup-ks.cfg文件

tar -czvf etcroot.tar.gz /etc/ /root/ --exclude /root/initial-setup-ks.cfg

4、综合指令练习

1)使用centos在centos的家目录下新建文件夹testdir

mkdir testdir

2)进入testdir,创建文本文件firstfile,并在其中输入姓名和学号的全拼
cd testdir;touch firstfile;vi firstfile

3)在testdir中创建文件firstfile的副本

cp firstfile fitstfile.bak

4)在testdir中创建文件firstfile的软硬链接文件

ln -s firstfile first-soft

ln -d fitstfile first-hard

5)修改firstfile的内容

vi firstfile

6)查看firstfile的副本,firstfile的软硬链接文件的内容

7)返回centos的家目录,将目录testdir打包并压缩为testdir.tar.gz

 cd /home/centos;tar -czvf.tar.gz testdir/

8)进入目录/tmp中,并在其中创建子目录tdir

cd /tmp;mkdir tdir

9)将刚才创建的压缩包复制到当前目录的子目录tdir中

cp /home/centos/testdir.tar.gz .   . :当前目录

10)在/tmp目录中解压该压缩包,观察解压后的目录出现在何处

tar -xzvf testdir.tar.gz

11)使用选项-C将该压缩包解压到指定目录中/tmp/tdir2(没有就创建一个),观察解压后的目录出现在何处

mkdir /tmp/tdir2;tar -xzvf testdir.tar.gz -C /tmp/tdir2/

12)将testdir再次压缩为testdir2.tar.gz,此次使用p和P选项

tar -czvpPf testdir2.tar.gz

13)将testdir2.tar.gz复制到/tmp/tdir中fa

cp testdir.tar.gz /tmp/tidr

14)将centos的家目录的testdir目录删除,接着将/tmp下解压出的testdir目录也删除

rm -rf

15) 将压缩包/tmp下的testdir2.tar.gz解压,完成后在centos家目录下和/tmp目录中搜索testdir目录的位置,观察其结果。

tar -czvpPf testdir2.tar.gz /home/centos/testdir

第3章 常用linux命令 3.5 文件压缩命令的更多相关文章

  1. PHP调用Linux的命令行执行文件压缩命令&&创建文件夹修改权限

    一开始,我和普通青年一样,想到用PHP内置的 ZipArchive纠结的是环境上没安装zip扩展,想采用用PHP调用Linux的命令行 ,执行压缩命令,感兴趣的朋友可以了解下,希望本文对你有所帮助 前 ...

  2. Linux下几种文件传输命令

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

  3. Linux下几种文件传输命令 sz rz sftp scp

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

  4. [原创] Linux下几种文件传输命令 sz rz sftp scp介绍

    Linux下几种文件传输命令 sz rz sftp scp介绍 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具.由于它是基于SSH的,会在传输过程中对用户的密码.数据等 ...

  5. 【Linux学习】Linux文件系统5—查看文件内容命令

    Linux文件系统5-查看文件内容命令 cat: 由第一行开始显示文件内容 more: 一页一页地显示文件内容,空格键可以继续翻页显示下一页内容 less:与more类似,但是可以往前翻页 head: ...

  6. [转帖]Linux下主机间文件传输命令

    Linux下主机间文件传输命令 https://yq.aliyun.com/articles/53631?spm=a2c4e.11155435.0.0.580ce8ef4Q9uzs   SCP命令: ...

  7. [转帖]linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 https://www.cnblogs.com/shileima/p/8431393.html 在使用linux时,经常需要进行文件查找. ...

  8. Linux常用命令(第二版) --文件搜索命令

    文件搜索命令 1.which /usr/bin/which #显示系统命令所在目录,绝对目录,不能查找文件 格式:which [系统命令] e.g. which ls 附-whereis:也可以查找到 ...

  9. Linux常用命令大全 --- 文件备份和压缩命令

    在linux中,常用的文件压缩工具有gzip.bzip2.zip . bzip2是最理想的压缩工具,它提供了最大限度的压缩.zip 兼容性好windows也支持 1.bzip2 命令 在shell 提 ...

随机推荐

  1. Lua table concat

    [1]table concat 简介 使用方式: table.concat(table, sep, start, end) 作用简介: concat是concatenate(连锁.连接)的缩写. ta ...

  2. C++ 01 基础知识点

    1.为某一特定的问题而设计的指令序列称为:程序 2.‘32位微型计算机’中的32位指的是:机器的字长 3.存储设备中,存取速度最快的是:Cache 4.指令的操作码表示的是:作何操作 5.一条指令由哪 ...

  3. C++ 结构体、模板、类、重载初使用

    目的:需要几个缓存用的数组900*750 首先定义一个模板<参数数据类型,参数1,参数2> 定义一个class类 名字自己取ap_uint0 下面是公用的数组模板[lrow][lcol] ...

  4. - Gradle 翻译 Analyzer APK文件分析 MD

    目录 目录 APK文件分析 使用 APK 分析器分析您的编译版本 查看文件和大小信息 查看 AndroidManifest.xml 查看 DEX 文件 过滤DEX文件树视图 加载 Proguard 映 ...

  5. -UI调试工具 SAK 布局 MD

    目录 目录 SwissArmyKnife 接入方式 自动初始化版本 支持的功能 可配置项 原理 自定义功能 Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndro ...

  6. @Autowired注解到底是byType还是byName?

    2016-08-05 14:29:32 杨家昌 阅读数 13400更多 分类专栏: spring   版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明 ...

  7. laravel5.4 orm with 用法

    在laravel orm 中一个with 关联方法,需要在模板中先定义表与表之间的关系 /*一对多的关系 */ public function hasManyTemplate(){ return $t ...

  8. [Tools] 多媒体视频处理工具FFmpeg

    FFMpeg FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视频的完整解决方案.它包含了非常先进的音频/ ...

  9. Jackson动态JSON处理

    https://www.baeldung.com/jackson-mapping-dynamic-object https://www.baeldung.com/jackson-deserializa ...

  10. 学习笔记之操作系统(Operating System)

    学习笔记之多线程 - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/5554565.html 用三个线程按顺序循环打印ABC三个字母 - 浩然119 ...