首先介绍一下tar命令:
用途:打包文件(制作归档文件)、释放归档文件
格式:
tar[选项]... 归档文件名 源文件或目录
tar [选项]... 归档文件名 [-C 目标目录]
常用命令选项:
现在根据一个练习题来讲一下tar命令和选项的具体应用:
第一步:
[root@dbserver02 ~]# tar cf /tmp/sxkj.tar -C /etc group passwd shadow
第二步:
[root@dbserver02 ~]# tar -tvf /tmp/sxkj.tar-rw-r--r-- root/root 707 -11-23 21:30 group-rw-r--r-- root/root1524 -11-23 21:41 passwd---------- root/root1125 -11-23 21:45 shadow
第三步:
[root@dbserver02 ~]# tar rf /tmp/sxkj.tar .bashrc
然后可以查看sxkj.tar里面的内容:
[root@dbserver02 ~]# tar -tvf /tmp/sxkj.tar-rw-r--r-- root/root 707 -11-23 21:30 group-rw-r--r-- root/root1524 -11-23 21:41 passwd---------- root/root1125 -11-23 21:45 shadow-rw-r--r-- root/root 176 -09-23 11:59 .bashrc
第四步:
已经知道sxkj.tar包里有四个文件,现在要求把其中的指定的一个文件解压到指定的 /tmp 目录;这是难点所在,代码如下:
[root@dbserver02 ~]# tar xvf /tmp/sxkj.tar -C /home groupgroup
注意:此处把包里的group文件放到了全部命令的最后。
第五步:
[root@dbserver02 ~]# tar cjvf /tmp/home.tar.bz2 /hometar: Removing leading `/' from member names/home//home/group
这里要求把路径中的 “ / ” 删除,因为在解压缩的过程中一定要注意绝对路径相对路径问题,推荐使用相对路径。如果使用了绝对路径,系统会自动修改成相对路径。
第六步:
[root@dbserver02 ~]# tar xjvf /tmp/home.tar.bz2 -C /tmphome/home/group[root@dbserver02 ~]# ls /tmphome home.tar.bz2 sxkj.tar
可以看到目录/tmp下已经有了home目录。
熟练掌握这个练习就应该可以掌握tar命令了。