Linux命令学习4—档案与文件系统的压缩与打包
来源:互联网 发布:jsp请求数据 编辑:程序博客网 时间:2024/05/11 23:09
一、Linux常见的压缩指令
*.Z compress程序压缩的档案
*.gz gzip程序压缩的档案
*.bz2 bzip2程序压缩的档案
*.tar tar程序打包的档案,无压缩
*.tar.gz tar程序打包的文档,经过gzip的压缩
*.tar.bz2 tar程序打包的档案,经过bzip2的压缩
二、gzip, zcat
1、格式:gzip [-cdtv#] 档名
zcat 档名.gz
2、选项与参数:
-c:将压缩的数据输出到屏幕,可使用数据流重导向来处理
-d:解压缩的参数
-t:检测压缩文件的一致性
-v:显示源文档/压缩文档的压缩比等信息
-#:压缩等级,-1最快,但是压缩比最差,-9最慢,压缩比最好,预设-6
3、实例:将man.config进行压缩
# gzip -v man.config
man.config: 56.1% -- replaced with man.config.gz
# ll /etc/man.config ./man.config.gz
-rw-r--r-- 1 root root 4617 2006-07-13 /etc/man.config
-rw-r--r-- 1 root root 2057 07-03 14:58 ./man.config.gz
4、cat可以读取纯文本文档,zcat则可以读取纯文本文档被压缩后的文件:
# zcat man.config.gz
5、解压缩(-d)
# gzip -d man.config.gz
6、将man.config用最佳压缩比压缩,并保留原本档案
# gzip -9 -c man.config >man.config.gz
三、bzip2, bzcat
bzip2提供比gzip更好的压缩比,用法几乎与gzip相同:
1、格式:
# bzip2 [-cdkzv#] 档名
# bzcat 档名.bz2
2、选项与参数:
-c:将压缩过程产生的数据显示在屏幕上
-d:解压缩的参数
-k:保留源文件,而不会删除原始的档案
-z:压缩的参数
-v:可显示出原档案/压缩文件的压缩比等信息
-#:压缩比,-9最佳,-1最快
3、实例
将man.config以bzip2压缩:
# bzip2 -z man.config
# ll
-rw-r--r-- 1 root root 2049 07-03 14:58 man.config.bz2
4、使用bzcat读取bzip2压缩后的纯文本文档
# bzcat man.config.bz2
5、bzip2的解压缩(-d)
# bzip2 -d man.config.bz2
6、将man.config用最佳的压缩比压缩,并保留原本档案
# bzip2 -9 -c man.config>man.config.bz2
四、打包指令:tar
1、格式:
打包与压缩:tar [-j|-z] [cv] [-f 建立的档名] filename...
查看文档名:tar [-j|-z] [tv] [-f 建立的档名]]
解压缩:tar [-j|-z] [xv] [-f建立的档名] [-C目录]
2、选项与参数
-c:建立打包档案,可与-v来查看过程中打包的档名
-t:查看打包档案的内容含有那些档名
-x:解打包或解压缩的功能,可与-C(大写)在特定目录解开
注意:-c,-t,-x不可同时出现在一串指令中
-j:使用bzip2的支持进行压缩/解压缩,档名为*.tar.bz2
-z:使用gzip的支持进行压缩/解压缩,档名为*.tar.gz
-v:在压缩/解压缩的过程中,将正在处理的文件名显示出来
-f filename:-f后面要立刻接被处理的档名
-C目录:用于特定目录解压缩
-p:保留备份数据的原本权限与属性,常用语备份(-c)重要的配置文件
-P:保留绝对路径,即允许备份数据中含有根目录存在
--exclude=FILE:在压缩过程中,不要将FILE打包
3、方便使用的形式:
·压缩:tar -jcv -f filename.tar.bz2 要被压缩的档案或目录名称
·查询:tar -jtv -f filename.tar.bz2
·解压缩:tar -jxv -f filename.tar.bz2 -C 解压的目录
4、实例
4.1 备份/etc目录
# tar -jpcv -f /root/etc.tar.gz /etc
4.2 查看档案名:
# tar -jtv -f /root/etc.tar.bz2
由于压缩使用了-p选项,故删除了前面的根目录'''/':
lrwxrwxrwx root/root 0 2012-01-09 00:46:51 etc/rc6.d -> rc.d/rc6.d
-rw-r--r-- root/root 17499 2007-06-19 19:53:20 etc/dnsmasq.conf
-rwxr-xr-x root/root 1292 2007-09-25 23:20:15 etc/auto.net
由于加上了v故而是详细的信息列表,如果只需要知道文件名,可省略v
如果要保留"/",则使用-P选项:
tar -jpPcv -f /root/etc.and.root.tar.bz2 /etc
tar -jtf /root.and.root.tar.bz2
lrwxrwxrwx root/root 0 2012-01-09 00:46:51 /etc/rc6.d -> rc.d/rc6.d
-rw-r--r-- root/root 17499 2007-06-19 19:53:20 /etc/dnsmasq.conf
4.3 将备份的数据解压缩到特定目录(-C)
tar -jxv -f /root/etc.tar.bz2 -C /tmp
删除临时目录:rm -rf /tmp/etc
4.4 仅解开单一档案
·先找到档名,假设为shadow:
[root@localhost /]# tar -jtv -f /root/etc.bz2 | grep 'shadow'
-r-------- root/root 1347 2012-01-09 18:07:36 etc/shadow-
-r-------- root/root 1379 2012-01-09 18:07:36 etc/shadow
-r-------- root/root 636 2012-01-09 18:07:36 etc/gshadow-
-r-------- root/root 652 2012-01-09 18:07:36 etc/gshadow
·解开该文件:
格式:tar -jxv -f 打包档.tar.bz2 待解开档名
#tar -jxv -r /root/etc.tar.bz2 etc/shadow
4.5 打包某目录,但不包含该目录下某些文档
打包/etc /root这几个目录,不包含/root/etc*开头档案,新档案放置为/root/system.tar.bz2,
注意这个档案不要打包自身,因为该档案也在/root底下,使用--exclude
# tar -jcv -f /root/system.tar.bz2 --exclude=/root/etc* --exclude=/root/system.tar.bz2 /etc /root
五、完整备份工具:dump
恢复数据使用restore命令
- Linux命令学习4—档案与文件系统的压缩与打包
- Linux 档案与文件系统的压缩与打包
- linux---档案与文件系统的压缩与打包
- 【鸟哥的linux私房菜-学习笔记】档案与文件系统的压缩与打包
- 档案与文件系统的压缩打包
- 档案与文件系统压缩与打包
- Linux鸟哥私房菜学习笔记_第九章档案与文件系统的压缩与打包
- 第9章 档案与文件系统的压缩与打包
- 第九章 档案与文件系统的压缩与打包
- 鸟哥的Linux私房菜10.15 档案与文件系统的压缩与打包
- 鸟哥的Linux私房菜10.15 档案与文件系统的压缩与打包
- Linux学习之文件系统与文件系统的压缩与打包
- linux笔记五(档案与文件系统的压缩与打包)
- liunx学习笔记之--档案与文件系统的压缩与打包
- 学习鸟哥私房菜(四)之 档案不文件系统的压缩与打包
- Linux 基础学习 文件与文件系统的压缩与打包
- 鸟哥的Linux私房菜基础学习篇(第三版)之第九章:档案与文件系统的压缩与打包
- 我的《鸟哥的Linux私房菜》笔记(六)档案与文件系统的压缩与打包
- Objective-C中的id类型
- python高级函数模块[1]
- 关于网络拓扑图和业务流程图的WEB组件
- C/C++编译过程理解
- Androdi 网页记载进度条应用
- Linux命令学习4—档案与文件系统的压缩与打包
- json入门基础教程(转)
- 远期外汇价格的计算
- Java--中文字符转GBK码
- locate命令与find命令的区别
- 双机调试用户态应用程序
- eclipse插件中数据浏览器的拓展
- MAT Memory Analyzer Tool 插件安装(图解)
- Android JNI和NDK有什么区别