第3章 常用linux命令 3.5 文件压缩命令

时间:2021-12-06 22:12:12

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

【实验目的】

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