博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux命令之tar:文件打包(备份)、压缩、解压
阅读量:5967 次
发布时间:2019-06-19

本文共 1992 字,大约阅读时间需要 6 分钟。

hot3.png

语法

tar  (选项)  (参数)

选项

  • -A或–catenate:新增文件到以存在的备份文件;
  • -B:设置区块大小;
  • -c或–create:建立新的备份文件;
  • -C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
  • -d:记录文件的差别;
  • -x或–extract或–get:从备份文件中还原文件;
  • -t或–list:列出备份文件的内容;
  • -z或–gzip或–ungzip:通过gzip指令处理备份文件;
  • -Z或–compress或–uncompress:通过compress指令处理备份文件;
  • -f<备份文件>或–file=<备份文件>:指定备份文件;
  • -v或–verbose:显示指令执行过程;
  • -r:添加文件到已经压缩的文件;
  • -u:添加改变了和现有的文件到已经存在的压缩文件;
  • -j:支持bzip2解压文件;
  • -v:显示操作过程;
  • -l:文件系统边界设置;
  • -k:保留原有文件不覆盖;
  • -m:保留文件不被覆盖;
  • -w:确认压缩文件的正确性;
  • -p或–same-permissions:用原来的文件权限还原文件;
  • -P或–absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号;
  • -N <日期格式> 或 –newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里;
  • –exclude=<范本样式>:排除符合范本样式的文件。

实例

将文件全部打包成tar包

[root@sxooky test]# tar cf script.tar catpv.sh diffbase.sh   #仅打包,不压缩![root@sxooky test]# tar zcf script2.tar.gz catpv.sh diffbase.sh   #打包后,以 gzip 压缩[root@sxooky test]# tar jcf script3.tar.bz2 catpv.sh diffbase.sh   #打包后,以 bzip2 压缩[root@sxooky test]# ll script*-rw-r--r-- 1 root root  1398 Mar 31 15:23 script2.tar.gz-rw-r--r-- 1 root root  1515 Mar 31 15:23 script3.tar.bz2-rw-r--r-- 1 root root 10240 Mar 31 15:23 script.tar

在选项f之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。

如果加z选项,则以.tar.gz或.tgz来代表gzip压缩过的tar包;

如果加j选项,则以.tar.bz2来作为tar包名。

查看包中文件

[root@sxooky test]# tar tf script3.tar.bz2 catpv.shdiffbase.sh

解压文件

[root@sxooky test]# mkdir test_tar test2_tar[root@sxooky test]# tar xf script2.tar.gz -C test_tar/  #解压全部文件[root@sxooky test]# tar xf script2.tar.gz -C test2_tar/ catpv.sh  #解压指定文件[root@sxooky test]# ll test*test2_tar:total 4-rw-r--r-- 1 root root 874 Mar 24 17:35 catpv.sh test_tar:total 8-rw-r--r-- 1 root root  874 Mar 24 17:35 catpv.sh-rw-r--r-- 1 root root 1699 Mar 15 13:50 diffbase.sh[root@sxooky test]# tar tf script3.tar.bz2 catpv.shdiffbase.sh

在文件夹当中,比某个日期新的文件才备份

tar -N "2012/11/13" -zcvf log17.tar.gz test

备份文件夹内容是排除部分文件

tar --exclude scf/service -zcvf scf.tar.gz scf/*

其实最简单的使用 tar 就只要记忆底下的方式即可

  • 压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
  • 查 询:tar -jtv -f filename.tar.bz2
  • 解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

转载于:https://my.oschina.net/u/3409834/blog/1548914

你可能感兴趣的文章
JFreeChart开发_用JFreeChart增强JSP报表的用户体验
查看>>
度量时间差
查看>>
通过jsp请求Servlet来操作HBASE
查看>>
Shell编程基础
查看>>
Shell之Sed常用用法
查看>>
<气场>读书笔记
查看>>
Centos下基于Hadoop安装Spark(分布式)
查看>>
3D地图的定时高亮和点击事件(基于echarts)
查看>>
mysql开启binlog
查看>>
设置Eclipse编码方式
查看>>
分布式系统唯一ID生成方案汇总【转】
查看>>
并查集hdu1232
查看>>
Mysql 监视工具
查看>>
Linux Namespace系列(09):利用Namespace创建一个简单可用的容器
查看>>
博客搬家了
查看>>
Python中使用ElementTree解析xml
查看>>
jquery 操作iframe、frameset
查看>>
解决vim中不能使用小键盘
查看>>
jenkins权限管理,实现不同用户组显示对应视图views中不同的jobs
查看>>
我的友情链接
查看>>