1. XZ压缩解压
1.1 xz压缩文件方法
xz是绝大数linux默认就带的一个压缩工具,压缩率很高。
默认压缩等级是6.要设置压缩率加入参数 -0 到 -9调节压缩率。
xz -z [文件名] 不保留原文件压缩 xz -zk [文件名] 保留原文件压缩
1.2 xz解压文件方法
xz -d [文件名] 不保留原文件解压 xz -dk [文件名] 保留原文件解压
创建或解压tar.xz文件:逐步压缩解压即可
创建tar.xz文件:先创建xxx.tar文件,然后使用xz -zk将tar文件压缩成为.tar.xz文件
解压tar.xz文件:先用xz -dk将tar.xz文件解压成tar文件,再用tar文件来解包即可。
2. BZ格式压缩解压
对于超大文件,使用bz格式压缩
tar.bz
Linux下压缩比率较tgz大,即压缩后占用更小的空间,使得压缩包看起来更小。
但同时在压缩,解压的过程却是非常耗费CPU时间。
2.1 BZ格式压缩
tar -jcvf examples.tar.bz2 examples (examples为当前执行路径下的目录) 说明: -j, --bzip2 filter the archive through bzip2 通过bzip2压缩的形式对文件进行归档 举例: tar -jcvf file.tar.bz2 dir #dir目录
2.2 BZ格式解压
tar -jxvf examples.tar.bz2 (解压至当前执行目录下) tar -jxvf examples.tar.bz2 -C /path (/path 解压至其它路径) 举例: tar -jxvf file.tar.bz2 tar -jxvf file.tar.bz2 -C /temp
3. 文件分割与合并
3.1 文件分割
压缩后的文件太大,需要将cm-11.tar.gz分割成N个指定大小的文件,怎么办?一条命令搞定
split -b 4000M -d -a 1 cm-11.tar.gz cm-11.tar.gz.
// 使用split命令,-b 4000M 表示设置每个分割包的大小,单位还是可以k
// -d "参数指定生成的分割包后缀为数字的形式
// -a x来设定序列的长度(默认值是2),这里设定序列的长度为1
执行命令后,生成压缩包如下:
-rw-r--r-- 1 root root 4194304000 May 20 14:00 cm-11.tar.gz.0
-rw-r--r-- 1 root root 4194304000 May 20 14:02 cm-11.tar.gz.1
-rw-r--r-- 1 root root 4194304000 May 20 14:03 cm-11.tar.gz.2
-rw-r--r-- 1 root root 4194304000 May 20 14:05 cm-11.tar.gz.3
-rw-r--r-- 1 root root 4194304000 May 20 14:06 cm-11.tar.gz.4
-rw-r--r-- 1 root root 4194304000 May 20 14:08 cm-11.tar.gz.5
-rw-r--r-- 1 root root 4194304000 May 20 14:09 cm-11.tar.gz.6
-rw-r--r-- 1 root root 2256379886 May 20 14:10 cm-11.tar.gz.7
以上两步也可以合并成一步来执行
tar -zcvf cm-11.tar.gz cm-11 | split -b 4000M -d -a 1 - cm-11.tar.gz. // 采用管道,其中 - 参数表示将所创建的文件输出到标准输出上
3.2 文件合并
cat cm-11.tar.gz.* | tar -zxv
将两个文件a.txt b.txt 合并成c.txt: cat a.txt b.txt > c.txt
4. 7z文件解压
7za x 压缩包 -r -o./ x 代表解压缩文件 // 注意,-o后面没有空格
apt-get install p7zip-full