Linux下打包命令tar
转:http://blog.chinaunix.net/uid-29021161-id-3922752.html
Linux下最常用的打包程序是tar,用tar命令打成的包文件通常以.tar结尾
1.名词解释
打包:是指将若干文件,目录合成一个文件,可以理解为装到一个文件里去了;
压缩:是指将一个大文件通过压缩算法变成一个小文件;
打包的意思
(1). Linux中很多压缩程序只能针对一个文件进行压缩,所以当你想要压缩一大堆文件时,得先借助打包工具将这一大堆文件先打成一个包,然后再用压缩程序来对这个包进行压缩;
(2). 移动文件时比较方便(搬家时,我们需要把小东西收纳到收纳容器里);
Linux中常见包文件后缀
.tar tar程序打包的数据,没有压缩过
.tar.gz tar程序打包的文件,并且经过gzip压缩
.tar.bz2 tar程序打包的文件,并且经过bzip2压缩
2. 命令格式
tar命令主要参数:
-c :建立打包文件
-t :查看打包文件的内容含有哪些文件名
-x :解包或解压缩的功能,可以搭配-C (大写) 在特定目录解开
备注:-c, -t, -x不可同时出现(原因不用说了吧)
-j : 使用bzip2进行压缩/解压缩,文件名默认为*.tar.bz2;
-z :使用gzip进行压缩/解压缩,文件名默认为*.tar.gz;
-v :在压缩/解压缩的过程中,将正在处理的文件名显示出来;
-f : -f后面要立刻接要被处理的文件名,不要再加参数,也可以把-f单独写一个选项;
-C :这个选项用在解压缩,后面跟目录,目的就是把文件解压缩到指定的目录;
-p :保留数据的原本权限与属性,常用于备份(-c);
-P :保留绝对路径,也就是说允许备份数据中含有根目录存在之意;
-r : 向打包文件里面追加文件。例如用户已经打包好文件,又发现还有一个目录或是一些文件忘记打包了,这时可以使用该选项,将忘记的目录或文件追加到打包的文件中;
--exclude=FILE:在压缩的过程中,不要将FILE打包;
-u :更新文件。就是说用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后;
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中;
3. 举例
(1)tar -cf bak.tar ./*.log
将当前目录下的所有log文件打成一个叫做bak.tar的包;
(2)tar -rf bak.tar ./*.txt
将当前目录下的所有txt文件增加到bak.tar的包里;
(3)tar -uf bak.tar ./tc.txt
更新包bak.tar中tc.txt文件,若原来没有则追加;
(4)tar -tf bak.tar
列出bak.tar包中所有文件;
(5)tar -xf bak.tar
解出bak.tar包中所有文件;
(6)tar -czf bak.tar.gz ./*.log
将当前目录下所有log文件打成一个用gzip压缩生成的包名为bak.tar.gz的包;
(7)tar -xzf bak.tar.gz
将bak.tar.gz文件先用gzip解压,解包;
(8)tar -cjf bak.tar.bz2 ./*.log
将当前目录下所有log文件打成一个用bzip2压缩生成的包名为bak.tar.bz2的包;
(9)tar -xjf bak.tar.bz2
将bak.tar.bz2文件先用bzip2解压,解包;
(10)tar -z[j]tvf bak.tar.gz(bz2) tc.log
从包bak.tar.gz(bz2)里只解压出文件tc.log;
(11)tar -cpjf bak.tar.bz2 ./*.log
将当前目录下所有log文件打成一个用bzip2压缩生成的包名为bak.tar.bz2的包,并且保留文件权限;
(12)tar --exclude=./sys.log -jcv -f bak.tar.bz2 ./*.log
将当前目录下除sys.log以外所有log文件打成一个用bzip2压缩生成的包名为bak.tar.bz2的包;
(13)tar -N "2010/10/08" -jcv -f bak.tar.gz ./*.log
将当前目录下所有修改日期比"2010/10/08"新的log文件打成一个用gzip压缩生成的包名为bak.tar.gz的包;
(14)tar --newer-mtime="2010/10/08" -jcv -f bak.tar.bz2 ./*.log
将当前目录下所有修改日期比"2010/10/08"新的log文件打成一个用bzip2压缩生成的包名为bak.tar.bz2的包;
(15)tar -tv -f bak.tar.gz(bz2)
查看bak.tar.gz(bz2)里面的内容;
Linux下打包命令tar的更多相关文章
- linux下打包命令的使用
Unix系统业务使用(特别是数据管理与备份)中,经过一番研究.整理后,充分利用Unix系统本身的命令tar.cpio和compress等来做到打包和压缩,使之充当类似DOS下的压缩软件,同时在Unix ...
- linux下rsync和tar增量备份梳理
前面总结过一篇全量备份/增量备份/差异备份说明,下面介绍下linux下rsync和tar两种增量备份的操作记录: 1)rsync备份 rsync由于本身的特性,在第一次rsync备份后,以后每次都只是 ...
- Linux下打包压缩war和解压war包 zip和jar
============jar================= 把当前目录下的所有文件打包成game.warjar -cvfM0 game.war ./ -c 创建war包-v 显示过程信息 ...
- Linux下rz命令使用的实例详解
Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,下面将通过几个实例来给大家详细介绍下Linux下rz命令的用法,一起来学习下吧. rz命令可以批量上传文件,当然也可上传单 ...
- Linux下rar命令详解
Linux下rar命令详解 用法: rar <命令> -<选项1> ….-<选项N> < 操作文档> <文件…> <@文件列表…> ...
- 阿里云OneinStack,Linux下tomcat命令
阿里云OneinStack,Linux下tomcat命令 Linux下如何查看tomcat是否启动在Linux系统下,重启Tomcat使用命令操作的首先,进入Tomcat下的bin目录cd /usr/ ...
- Linux下高频命令分类辑录(基本使用篇)
本文目的:总结linux下常用命令的基本使用方法 文件权限: 文档权限设置命令:chmod 数字模式: 文档权限由-rwxrwxrwx十个字符组成,其中第一个代表文档类型,后面九个字符按照顺序分为三组 ...
- linux下nm命令的使用
linux下强大的文件分析工具 -- nm 什么是nm nm命令是linux下自带的特定文件分析工具,一般用来检查分析二进制文件.库文件.可执行文件中的符号表,返回二进制文件中各段的信息. 目标文件. ...
- 怎么查看二进制文件内容?linux下nm命令告诉你!
linux下强大的文件分析工具 -- nm 什么是nm nm命令是linux下自带的特定文件分析工具,一般用来检查分析二进制文件.库文件.可执行文件中的符号表,返回二进制文件中各段的信息. 目标文件. ...
随机推荐
- jQuery操纵DOM
一.基本操作 1.html() - 类似于原生DOM的innerHTML属性 *获取 - html(); *设置 - html("html代码"); 2.val() - 类似于原生 ...
- 金中欢乐赛 A题
题目传送门 这道题就贪心.... 正的一坨和负的一坨间隔 #include<cstdio> #include<cstring> #include<algorithm> ...
- [codevs3160]最长公共子串解题报告|后缀自动机
给出两个由小写字母组成的字符串,求它们的最长公共子串的长度. 样例就觉得不能更眼熟啊...好像之前用后缀数组做过一次 然后发现后缀自动机真的好好写啊...(当然当时学后缀数组的时候也这么认为... 这 ...
- Sequence(ST表)(洛谷P2048)
超级钢琴 知识储备 在做这道题前,我们先要了解一下ST表(一种离线求区间最值的方法) ST表使用DP实现的,其查询复杂度为O(1). 那么我们怎么用DP实现呢?? 首先,我们设立一个状态f[i][j] ...
- Codeforces Round #391 A B C D E
A. Gotta Catch Em' All! 题意 从给定的字符串中选取字符,问可构成多少个\(Bulbasaur\) // 想到柯南里一些从报纸上剪汉字拼成的恐吓信_(:з」∠)_ Code #i ...
- 使用QML创建第一个界面(转)
原文转自 https://blog.csdn.net/rl529014/article/details/51378307 在Qt编程中,我们可以使用纯C++代码,或C++和XML结合的方式来创建GUI ...
- Django-views,用户认证,login_requierd()
分别是认证,登入,注销的功能 authenticated():验证是否登录 user = authenticate(username='someone',password='somepassword' ...
- DRF的异常处理
默认情况下,DRF框架通过内置的 exception_handler 方法,处理了如下异常: django内置异常 Http404 PermissionDenied DRF框架异常 APIExcept ...
- ReentrantLock 相关学习笔记
ReentrantLock 相关学习笔记 标签(空格分隔): Java多线程 Java接口Lock有三个实现类:ReentrantLock.ReentrantReadWriteLock.ReadLoc ...
- docker从零开始 存储(六)存储驱动如何选择
Docker存储驱动程序 理想情况下,将非常少的数据写入容器的可写层,并使用Docker卷来写入数据.但是,某些工作负载要求您能够写入容器的可写层.这是存储驱动程序的用武之地. Docker使用可插拔 ...