实验七 文件的压缩与打包
上机实验内容:
打开终端后在[root@localhost ~]#后面输入自己名字 1、把操作目录转到/tmp下
cd /tmp
复制/ect目录下的的/passwd文件到当前工作目录
cp /etc/passwd .
使用compress对其进压缩 如果提示有问题,找出问题所在
2、用gzip压缩/tmp中的/passwd文件,并设定压缩等级为1
gzip -1 passwd
解压缩该文件
gzip –d passwd.gz
用gzip压缩/tmp中的/passwd文件,并设定压缩等级为9
gzip -9 compress
查看压缩后的文件内容
zcat passwd.gz
解压缩该文件,并定向输出为passwd
gzip –cd passwd.gz>passwd
3、用bzip2压缩/tmp中的/passwd文件,并设定压缩等级为1
bzip2 -1 passwd
解压缩该文件
bzip2 –d passwd.bz2
用bzip2压缩/tmp中的/passwd文件,并设定压缩等级为9
bzip2 -9 passwd
查看压缩后的文件内容
bzcat passwd.bz2
解压缩该文件,并定向输出为passwd
bzip2 –cd passwd.bz2>passwd
4、把/etc内的文件打包之后存储到/tmp下
tar –cvf ./etc.tar /etc
把/etc内的文件打包并且用bzip2的方式压缩,之后存储到/tmp下
tar –jcvf ./etc.tar.bz2 /etc
把/etc内的文件打包并且用gzip的方式压缩,之后存储到/tmp下
tar –zcvf ./etc.tar.gz /etc 分别查看压缩后的文件中都包含哪些文 tar –tf etc.tar tar –tf etc.tar.bz2 tar –tf etc.tar.gz 解压缩第一个压缩文件
tar –xvf etc.tar
把第二个压缩文件解压缩到/tmp/etc1中
mkdir etc1
tar –jxvf etc.tar.bz2 –C ./etc1
把第三个压缩文件中的/passwd文件解压缩
tar –zxvf etc.tar.gz etc/passwd
备份/etc中的所有文件到/tmp中,并且保证权限不变 tar –cvpf ./etc.tar /etc
把/home中比2010.8.15新的文件备份到/tmp下面
tar -N ‘2010/08/15’ –cvf home.tar /home
把/etc和/root中的数据备份到/tmp下面,但是不备份/root下的install.log文件 tar --exclude /root/install.log -cvf myfile.tar /home/* /etc 5、使用dd指令备份硬盘had的mbr到/tmp中
dd if=/dev/hda of=/tmp/mbr.back bs=512 count=1
使用dd指令备份硬盘分区hda1到/tmp中
dd if=/dev/hda1 of=/tmp/hda1.back 6、综合指令练习:
i)在本机某个普通用户根目录下新建文件夹testdir
cd /home/user mkdir testdir
ii)进入testdir,创建文本文件firstfile,并在其中输入姓名和学号的全拼
cd testdir touch firstfile vi firstfile i
20087760206 杜秋野
iii)在testdir中创建文件firstfile的副本
cp firstfile firstfile2
iv)在testdir中创建文件firstfile的软硬链接文件
ln –s firstfile firstfile_s ln firstfile firstfile_h
v)进入testdir,将目录/home中所有在2010年10月1日后修改过的文件打包为mytar.tar.gz
tar -N ‘2010/10/01’ –czvf mytar.tar.gz /home
vi)将目录testdir打包并压缩为testdir(不加.tar.gz或.tar.bz2的后缀),观察是否能创建成功,若创建成功,将其重命名为testdir.tar.gz或testdir.tar.bz2
tar –czvf testdir .
mv testdir testdir.tar.gz
vii)进入目录/tmp中,并在其中创建子目录tdir
cd /tmp mkdir tdir
viii)将刚才创建的压缩包复制到当前目录的子目录tdir中
cp /home/user/testdir/testdir.tar.gz ./tdir
ix)在/tmp目录中解压该压缩包,观察解压后的目录出现在何处
cd tdir
tar –zxvf testdir.tar.gz
x)使用选项-C将该压缩包解压到指定目录中,观察解压后的目录出现在何处
mkdir ../tdir2 cd ../tdir2
tar –zxvf ../tdir/testdir.tar.gz –C .
xi)将testdir再次压缩为testdir2.tar.gz,此次使用p和P选项
tar –czvpPf testdir2.tar.gz /home/user/testdir
xii)将testdir2.tar.gz复制到/tmp/tdir中
cp testdir2.tar.gz ../tdir
xiii)将普通用户根目录下的testdir目录删除,接着将第viii步解压出的testdir目录也删除
rm -rf /home/user/testdir rm -rf /tmp/tdir
xiv)将压缩包testdir2.tar.gz解压,完成后在普通用户根目录和/tmp目录中搜索testdir目录的位置,观察其结果与第viii步的不同。
tar –zxvf testdir2.tar.gz find /home/user –name testdir find /tmp –name testdir
实验八 vi文本编辑器
练习一:
1. 请在 /root 这个目录下建立一个名为 vitest 的目录;
a) mkdir vitest
2. 进入 vitest 这个目录当中;
a) cd vitest
3. 将 /etc/man.config拷贝到本目录底下;
a) cp /etc/man.config ./
4. 使用 vi 开启本目录下的 man.config 这个档案;
a) vi man.config
5. 在 vi 中设定一下行号;
a) :set nu
6. 移动到第62 行,向右移动 40 个字元?
a) 62G
b) 40
7. 移动到第一行,并且向下搜寻一下『 teTeX 』这个字串?
a) gg b) /teTex
8. 接着下来,我要将 50 到 100 行之间的 man 改为 MAN ,并且一个一个挑选是
否需要修改?
a) :50,100s/man/MAN/gc
9. 修改完之后,突然反悔了,要全部复原?
a) u
10. 我要复制 51 到 60 行这十行的内容,并且贴到最后一行之后;
a) 51G b) 10yy c) G d) p
11. 删除 11 到 30 行之间的 20 行;
a) 11G b) 20dd
12. 将这个档案另存成一个 man.test.config 的档名;
a) :w man.test.config
13. 去到第 29 行,并且删除 15 个字符;(29G 之后, 15x 即可删除 15 个字符)
a) 29G b) 15x