Linux必杀(十六):打包命令tar

来源:互联网 发布:网络舆情信息综合分析 编辑:程序博客网 时间:2024/06/15 07:34

题记:

tar 的参数非常多。挑重点的讲几个。

tar [-j|-z] [cv] [-f 新建的文件名] filename  <==打包与压缩tar [-j|-z] [tv] [-f 新建的文件名]  <==查看文件名tar [-j|-z] [xv] [-f 新建的文件名] [-c目录] <==解压缩参数:-c :新建打包的文件,可以搭配-v来查看过程中被打包的文件名(filename)-t:查看打包文件的内容含有哪些文件名,重点在于查看文件名。-x:解压缩或者解打包的功能,可以搭配-C(大写)在特定目录解开。    特别留意的是,-c,-t,-x不可同时出现在一串命令中。-j:通过bzip2的支持进行压缩/解压缩,此时文件名最好为*.tar.bz2。-z:通过gzip的支持进行压缩/解压缩,此时文件名最好为*.tar.gz。-v:在压缩/解压缩的过程中,将正在处理的文件名显示出来。-f filename:-f 后面要接被处理的文件名,建议-f单独写一个参数。-c 目录:这个参数用在解压缩时,如在特定的目录解压缩,可以使用。-P(大写):保留备份数据的原本权限和属性,常用于备份(-c)重要的配置文件。-p:保留绝对路径,即允许备份数据中含有根目录存在。--exclude=FILE:在压缩的过程中,不要将FILE打包。

其实简单的使用只需要记住下面三个命令就够了:
1.压缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或者目录名称。
2.查询:tar -jtv -f filename.tar.bz2
3.解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

例一、使用tar加入-j或者-z的参数备份/etc/目录
有事没事备份一下/etc这个目录是个好习惯。
这里写图片描述

root@wd:~# tar -jpcv -f /root/etc.tar.bz2 /etc

ps:建议加上“-p”这个参数的原因是为了保存原本文件的权限与属性

例二、仅解压单一目录
这里写图片描述
ps: |配合grep可以选取关键字

例三、将文件解开

root@wd:~# tar -jxv -f 打包文件.tar.bz2 待解开的文件名root@wd:~# tar -jxv -f /root/etc.tar.bz2 etc/shadowetc/shadowroot@wd:~# 

例四、利用管道命令与数据流
在tar的使用中,有一种方式很特殊,那就是通过标准的输入输出的数据流重定向,以及管道命令的方式,将待处理的文件一边打包一边解压缩到目标目录中去。

将/etc 整个目录一边打包一边在/tmp中解开

root@wd:/tmp# tar -cvf - /etc | tar -xvf -
原创粉丝点击