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

【实验目的】

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. c++篇 vc++2010设置和c#一样的代码段,vs2010 两下tab设置

    设置vs2010 tab敲两下出 for 片段,因为vs2010的代码片段是在番茄助手里设置的...代码片段管理器中不能设置c++ 所以我只能安装一个番茄助手了... 然后就是修改番茄助手内的[提示] ...

  2. NamedParameterJdbcTemplate举例使用

    原文地址https://www.iteye.com/blog/cosmicbugs-1190279 NamedParameterJdbcTemplate内部包含了一个JdbcTemplate,所以Jd ...

  3. Python内网渗透扫描器Ladon

    Ladon Scanner For Python PyLadon 目前python版功能较少,无论在Windows还是Linux系统性能以及速度均也比不上Ladon.exe 唯一的优点是跨平台,后续会 ...

  4. 25个led灯新玩法

    Microbit板子的25个led灯,是5X5的阵列,led(lights emitting diodes)中文叫发光二极管,有单向导电性,还发光,有各种颜色的,红,蓝,黄等等.mPython可以让你 ...

  5. HanLP分词研究

    这篇文章主要是记录HanLP标准分词算法整个实现流程. HanLP的核心词典训练自人民日报2014语料,语料不是完美的,总会存在一些错误.这些错误可能会导致分词出现奇怪的结果,这时请打开调试模式排查问 ...

  6. Django框架之DRF 认证组件源码分析、权限组件源码分析、频率组件源码分析

    认证组件 权限组件 频率组件

  7. Scala 数组操作之Array、ArrayBuffer以及遍历数组

    ArrayBuffer 在Scala中,如果需要类似于Java中的ArrayList这种长度可变的集合类,则可以使用ArrayBuffer. // 如果不想每次都使用全限定名,则可以预先导入Array ...

  8. ZYNQ笔记(5):软中断实现核间通信

    ZYNQ包括一个 FPGA 和两个 ARM,多个 ARM 核心相对独立的运行不同的任务,每个核心可能运行不同的操作系统或裸机程序,但是有一个主要核心,用来控制整个系统以及其他从核心的允许.因此我们可以 ...

  9. NodeJS 使用内容以及模拟一个接口

    1.结合上一篇 安装完Nodejs之后 通过手动创建一个完整的NodeJs项目 2.https://www.jianshu.com/p/7b0a5d4491ba 创建一个完整的项目之后 3.下面是一个 ...

  10. Jenkins教程(四)安装BlueOcean与Maven构建

    前言 本文旨在使用BlueOcean实现构建可视化与使用Maven构建上一节Jenkins教程(三)添加凭据与流水线拉取Git代码拉下来的代码 什么是Blue Ocean Blue Ocean 重新思 ...