【Linux】深入探索 Linux 系统中的归档压缩技术
目录
一、归档压缩技术
1.1 tar 命令
1.1.1 创建 tar 包
1.1.2 查询 tar 包包含的文件目录列表
1.1.3 释放 tar 包
1.2 压缩技术
1.2.1 三种压缩技术的介绍
1.2.2 gzip 压缩
1.2.3 bzip2 压缩
1.2.4 xz 压缩
一、归档压缩技术
归档的本质:将多个对象打包为一个对象
1.1 tar 命令
tar [-cxtzjvf] 文件与目录 .... 参数:
-
-c :建立一个压缩文件的参数指令(create 的意思);
-
-x :解开一个压缩文件的参数指令!
-
-t :查看 tarfile 里面的文件!
-
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!(显示过程信息)
-
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!(指定归档包的名称)
-
-C : 解压到指定目录
1.1.1 创建 tar 包
1. 命令演示
# 创建 tar 包
tar -cvf zhangsan.tar /etc/
# 验证是否打包成功
echo $?
# 查看文件性质
file zhangsan.tar
2. 基于命令创建测试文件
# 创建测试文件
dd if=/dev/zero of=./aaa.txt bs=1M count=3
# 查看文件:以人类阅读的方式查看
ls -lh
# 估算文件大小
du -sh aaa.txt
- dd:创建文件
- if:inputfile 输入源文件
- /dev/zero:零号文件,用于创建测试文件
- of:outputfile 输出目标文件
- bs:block size 读取零号文件生成目标文件的数据块的大小
- count:表示 bs 的个数
3. 创建测试文件的 tar 包
tar -cvf zs1.tar aaa.txt bbb.txt
1.1.2 查询 tar 包包含的文件目录列表
tar -tf xxxx.xxx
1.1.3 释放 tar 包
1. 释放在当前位置
tar -zxvf zs2.tar.gz
tar -jxvf zs3.tar.bz2
2. 释放在指定位置
通过 -C 指定压缩的目录位置:
tar -Jxvf zs4.tar.xz -C /666/
1.2 压缩技术
1.2.1 三种压缩技术的介绍
1. gzip 压缩:文件后缀名为 .gz
2. bzip2 压缩:文件后缀名为 .bz2
3. xz 压缩:文件后缀名为 .xz
1.2.2 gzip 压缩
tar -zcvf zs2.tar.gz aaa.txt bbb.txt
1.2.3 bzip2 压缩
tar -jcvf zs3.tar.bz2 aaa.txt bbb.txt
1.2.4 xz 压缩
tar -Jcvf zs4.tar.xz aaa.txt bbb.txt
注意事项:
1. 参数顺序尽量不要变化
2. 一般情况下,压缩比 xz > bzip2 > gzip
3. 一般情况下,压缩时长:xz > bzip2 > gzip
本文地址:https://www.vps345.com/13500.html