04. 系统中如何对文件进行压缩处理
压缩的命令 tar
压缩命令语法:
tar zcvf /oldboy/oldboy.tar.gz 指定要压缩的数据文件
z 压缩的方式 为zip
c 创建压缩包文件
v 显示压缩的过程
f 指定压缩包文件路径信息
压缩数据方法:
[root@oldboyedu oldboy]# tar zcvf /oldboy/oldboy.tar.gz /oldboy/services
tar: Removing leading `/' from member names
/oldboy/services
检查是否压缩成功:
如何解压数据包
tar xvf /oldboy/oldboy.tar.gz
确认解压后的文件和源文件是否一致
1. 看文件的大小和时间信息
2. 利用vimdiff或者diff比较两个文件内容是否有区别
在不解压情况下查看压缩包里面的数据
tar tf /oldboy/oldboy.tar.gz
压缩过程信息说明
[root@oldboyedu oldboy]# tar zcvf oldboy.tar.gz /oldboy/services
tar: Removing leading `/' from member names --- 默认将压缩时绝对路径的根信息移除
/oldboy/services --- 需要压缩的文件数据信息
相对路径进行压缩
[root@oldboyedu oldboy]# tar zcvf oldboy.tar.gz ./services
./services
[root@oldboyedu oldboy]# tar tf oldboy.tar.gz
./services
在压缩过程中排除指定数据不要被压缩
tar命令排除参数
--exclude=PATTERN exclude files, given as a PATTERN -- 排除指定单个文件数据
-X, --exclude-from=FILE exclude patterns listed in FILE -- 批量排除多个文件
多个文件进行排除
第一个历程: 编写好排除文件
[root@oldboyedu oldboy]# vim /tmp/exclude.txt
/oldboy/oldboy.txt
/oldboy/oldboy.avi
/oldboy/oldboy.jpg
/oldboy/oldboy.png
第二个历程: 执行命令进行批量排除
[root@oldboyedu oldboy]# tar zcvf /tmp/oldboy05.tar.gz /oldboy --exclude-from=/tmp/exclude.txt
tar: Removing leading `/' from member names
/oldboy/
/oldboy/services
/oldboy/oldboy01/
总结:排除指定数据信息需要定义好路径信息
路径信息全部采用绝对路径
[root@oldboyedu /]# tar zcvf /tmp/oldboy03.tar.gz /oldboy --exclude=/oldboy/oldboy.txt
tar: Removing leading `/' from member names
/oldboy/
/oldboy/services
/oldboy/oldboy01/
路径信息全部采用相对路径
[root@oldboyedu /]# tar zcvf /tmp/oldboy04.txt.tar.gz ./oldboy --exclude=./oldboy/oldboy.txt
./oldboy/
./oldboy/services
./oldboy/oldboy01/