tar命令用于将大型文件集汇集为一个文件(存档)
tar的三种操作:c(创建存档)、t(列出存档的内容)、x提取存档
tar的常用选项:f(要操作的存档文件名)、v(可视化操作)
创建压缩的tar存档
压缩方式:z(gzip)、j(bzip2)、J(xz)
1. 使用root用户,在/root/下创建目录 tardir1,并使用 cd 进入该目录
[root@desktop1 ~]# mkdir ~/tardir1
[root@desktop1 ~]# cd tardir1/
2.使用 tar 命令,将/etc/sysconfig/network-scripts/中的所有文件打包成一个文件, 文件名为 achieve1.tar,存储/root/tardir1/目录下
[root@desktop1 tardir1]# tar cf achieve1.tar /etc/sysconfig/network-scripts/* tar: Removing leading `/' from member names [root@desktop1 tardir1]# ls achieve1.tar
3.使用 tar 命令,显示 achieve1.tar 中的文件列表
[root@desktop1 tardir1]# tar tf achieve1.tar etc/sysconfig/network-scripts/ifcfg-br0 etc/sysconfig/network-scripts/ifcfg-eno16777736 etc/sysconfig/network-scripts/ifcfg-eno33554960 etc/sysconfig/network-scripts/ifcfg-eno50332184 etc/sysconfig/network-scripts/ifcfg-lo etc/sysconfig/network-scripts/ifdown ... etc/sysconfig/network-scripts/init.ipv6-global etc/sysconfig/network-scripts/network-functions etc/sysconfig/network-scripts/network-functions-ipv6 [root@desktop1 tardir1]#
4. 使用tar命令,释放achieve1.tar到/root/tardir1目录下,观察该目录下出现了etc 目录
[root@desktop1 tardir1]# ll total 172 -rw-r--r--. 1 root root 174080 Nov 2 17:03 achieve1.tar drwxr-xr-x. 3 root root 22 Nov 2 17:08 etc
5. 将 achieve1.tar 复制到/home/student(student 用户的 home 目录下)
[root@desktop1 tardir1]# cp achieve1.tar /home/student/
6. 使用 student 用户,释放/home/student/achieve1.tar 到 student 的 home 目录下, 确认释放出来的所有文件的
用户和组都是 student(原来这些文件都是 root 用户的)
[student@desktop1 ~]$ ls achieve1.tar [student@desktop1 ~]$ tar xf achieve1.tar [student@desktop1 ~]$ ls -l etc/sysconfig/network-scripts/ total 224 -rw-r--r--. 1 student student 261 Sep 27 20:20 ifcfg-br0 -rw-r--r--. 1 student student 163 Sep 27 20:20 ifcfg-eno16777736 -rw-r--r--. 1 student student 293 Sep 27 20:19 ifcfg-eno33554960 -rw-r--r--. 1 student student 293 Sep 27 20:19 ifcfg-eno50332184 -rw-r--r--. 1 student student 254 Apr 2 2014 ifcfg-lo ...
7. 使用 root 用户,创建/etc/sysconfig/network-scripts/下所有文件的压缩存档,只用 gzip 作为压缩方式,
压缩文件名为 achieve2.tar.gzip,存储于/root/tardir1/下
[root@desktop1 tardir1]# tar czf archieve2.tar.gz /etc/sysconfig/network-scripts/ tar: Removing leading `/' from member names
8. 删除/root/tardir1 下的 etc 目录及其所有子目录和子文件
[root@desktop1 tardir1]# ll total 208 -rw-r--r--. 1 root root 174080 Nov 2 17:03 achieve1.tar -rw-r--r--. 1 root root 36258 Nov 2 17:16 archieve2.tar.gz drwxr-xr-x. 3 root root 22 Nov 2 17:08 etc [root@desktop1 tardir1]# rm -rf etc/
9. 释放 achieve2.tar.gz 的归档文件到 tardir1 目录下,并查看
[root@desktop1 tardir1]# tar vxzf achieve2.tar.gz etc/sysconfig/network-scripts/ etc/sysconfig/network-scripts/ifcfg-lo ... etc/sysconfig/network-scripts/ifcfg-br0
[root@desktop1 tardir1]# ls etc/sysconfig/network-scripts/ ifcfg-br0 ifdown-routes ifup-plusb ifcfg-eno16777736 ifdown-sit ifup-post ifcfg-eno33554960 ifdown-Team ifup-ppp ifcfg-eno50332184 ifdown-TeamPort ifup-routes ifcfg-lo ifdown-tunnel ifup-sit ifdown ifup ifup-Team ifdown-bnep ifup-aliases ifup-TeamPort ifdown-eth ifup-bnep ifup-tunnel ifdown-ippp ifup-eth ifup-wireless ifdown-ipv6 ifup-ippp init.ipv6-global ifdown-isdn ifup-ipv6 network-functions ifdown-post ifup-isdn network-functions-ipv6 ifdown-ppp ifup-plip [root@desktop1 tardir1]#