tar分层压缩

在Linux下使用 tar 命令来将文件打包并压缩是很通常的用法了。

可是Linux的文件系统对文件大小有限制,也就是说一个文件最大不能超过2G,如果压缩包的的内容很大,最后 的结果就会超过2G,又或者压缩包希望通过光盘来进行备份,而每张光盘的容量只有700M,那么该如何存储呢?

解决办法: 
将最后的压 缩包按照指定大小进行分割,需要用到split命令。

举例说明: 
要将目录logs打包压缩并分割成多个1M的文件,命令:

tar czf - logs/ |split -b 1m - logs.tar.gz

完成后会产生下列文件:

logs.tar.gz.aa, logs.tar.gz.ab, logs.tar.gz.ac

解压时只要执行命令:

cat logs.tar.gz.a* | tar xz

再举例: 
要将文件test.pdf分包压缩成500 bytes的文件:

tar czf - test.pdf | split -b 500 - test.tar.gz

最后要提醒但是那两个”-“不要漏了,那是tar的ouput和split的input的参数。

这里对命令做一些讲解。 
压缩和分割命令行中红色部分的为命令对应的I/O文件名参数,其中-表示标准输入或输出。那么结合上面的例子,tar命令表示的意思就是将logs目录压缩,生成的结果直接输送到标准输出上;而split命令表示从标准输入获得文件内容进行分割,结果文件前缀为logs.tar.gz.。二者再通过管道将各自的标准输入输出对接起来。

这里再解释一下split命令的参数含义: 
-b SIZE 指定每个文件的大小,其单位可以为b(512字节)、k(1K)、m(1M) 
-d 使用数字而不是字母作为后缀名 
-a X 指定后缀名的长度,默认为2位

命令可以变化为:

tar czf - logs/ |split -b 1m -d -a 1- logs.tar.gz

原文地址:https://www.cnblogs.com/zxouxuewei/p/8146240.html

时间: 2024-08-30 05:23:30

tar分层压缩的相关文章

tar命令压缩解压缩命令总结

linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的.生成tar包后,就可以用其它的程序来进行压缩. 1.命令格式: tar[必要参数][选择参数][文件] 2.命令功能: 用来压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的 3.命令参数: 必要参数有如下: -A 新增压缩文件到已存在的压缩 -B 设置区块大小 -c 建立新的压缩文件 -d 记录文件的差别 -r 添加文件到已经压缩的文件 -u 添加改变

tar打包压缩命令

1. tar命令 用法: tar [选项...] [FILE]... GNU 'tar'将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件. 示例 tar -cf archive.tar foo bar # 从文件 foo 和 bar 创建归档文件archive.tar. tar -tvf archive.tar # 详细列举归档文件 archive.tar中的所有文件. tar -xf archive.tar # 展开归档文件 archive.tar 作用:打包.压缩

tar打包压缩目录

tar cvf filename.tar dirname    打包 tar zvf filename.tar            解包 .gz gzip filename1 filename2        压缩 gunzip filename.gz              解压 zip -d filename.gz              解压 .tar.gz tar zcvf filename.tar.gz dirname    打包压缩 tar zxvf filename.tar.

Linux 之 tar打包压缩与解压使用

tar打包压缩与解压使用 1.tar 压缩打包/root/Desktop整个目录,并把打包的文件放到/root/backup目录下 [[email protected] ~]# tar -czvf /root/backup/desktop.tar.gz Desktop/ Desktop/ Desktop/abc/ Desktop/abc/tff.txt Desktop/abc/1.txt Desktop/abc/abc.log Desktop/def/ Desktop/def/222.txt D

tar打包压缩命令总结

##tar命令参数 tar  zcvf   xxx.tar.gz /etc         ##前:打包压缩后的文件名,后:被打包压缩的文件或目录 tar zxvf xxx.tgz -C /etc/         ##将xxx.tgz文件解压到指定路径下 -z 调用gzip工具压缩,生成或解压.gz扩展的压缩文件 -c --create,创建tar包 -v 显示输出过程信息 -f --file对普通文件打包压缩 --exclude=x 排除不需要处理的文件或目录,不进行打包压缩 --exclu

Ubantu(乌班图)系统下,用命令解压 [ .tar.xz ]压缩文件(新手共勉)

1.Ctrl Alt T ,打开命令输入界面 2.用 cd 命令进入压缩文件所在路径(我的是日文系统) 3.该压缩文件为双压缩格式,即 .xz  和 .tar , 所以可以分两次分别解压,分别输入 $ xz -d Python-3.5.1.tar.xz $ tar -xvf Python-3.5.1.tar 搞定! -------------------------------------------------------------------------------------------

Linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?

打包举例:将 /usr/local/src/zlib-1.2.5目录下的文件打包成 zlib-1.2.5.tar.gz cd /usr/local/src tar -czvf ./zlib-1.2.5.tar.gz ./zlib-1.2.5/* # 压缩到制定目录下(如:/root/2/ ) tar -czvf /root/2/zlib-1.2.5.tar.gz ./zlib-1.2.5/* #压缩 tar  -czvf   ***.tar.gz tar  -cjvf   ***.tar.bz2

gzip,zip,bzip2,xz,tar文件压缩和归档

gzip [-d#] 文件   其中#为1-9的数字 gzip + 文件  压缩文件,删除源文件 gzip -d + 文件  解压缩文件,删除源文件 压缩等级:1压缩最差,9压缩最好,6为默认 zcat查看.gz的文本文件内容 bzip2 + 文件  压缩文件,删除源文件 bzip2 -d + 文件  解压缩文件,删除源文件 bzcat查看.bz2的文本文件内容 gzip和bzip2都不能压缩目录 zip和unzip zip  + 压缩后文件名.zip + 文件      压缩文件,源文件不会消

tar 分包压缩与合并

要将目录logs打包压缩并分割成多个1M的文件,可以用下面的命令: tar cjf - logs/ |split -b 1m - logs.tar.bz2.完成后会产生下列文件: logs.tar.bz2.aa, logs.tar.bz2.ab, logs.tar.bz2.ac要解压的时候只要执行下面的命令就可以了:cat logs.tar.bz2.a* | tar xj 再举例:要将文件test.pdf分包压缩成500 bytes的文件:tar czf - test.pdf | split -