Ubuntu 下大文件夹分卷压缩

来源:互联网 发布:java filereader 指针 编辑:程序博客网 时间:2024/05/21 12:55

Ubuntu 下大文件夹分卷压缩
由于android源码比较大,直接上传百度云盘又有文件大小限制,因此,分卷压缩尤其重要

ref : http://blog.csdn.net/baggio1006/article/details/17503113
有没有遇到某些网站上传复件时,单个文件有大小限制,导致上传失败呢?当然你可以采用更高的压缩率重新生成压缩包来解决,但如果还是超出大小限制,那该怎么办呢?有个方法可以解决此类问题,将压缩包分成多个文件,问题就迎刃而解,这就叫:分卷压缩。
如何进行分卷压缩与解压呢,有如下几个命令可供使用:
假设当前目录下有proc目录。

tar -czf - proc | split -b 2m -d - proc.tar.gz #分卷压缩proc目录,并保持每个压缩包的大小不超过2m字节。命令执行后,会生成proc.tar.gz00、proc.tar.gz01等文件

cat proc.tar.gz* | tar -xzf - #将各个分卷压缩包解压到当前目录

cat proc.tar.gz* > proc.tar.gz #将各个分卷压缩包合成为一个proc.tar.gz文件

附录:split命令的使用
split proc.tar.gz -b 2m #将proc.tar.gz文件分割为多个小文件,并保持每个小文件的大小不超过2m字节。命令运行后,源文件依然存在。生成的小文件以默认格式命名,为:xaa、xab等
split proc.tar.gz -b 2m -d #基本同上,只是生成的小文件以数字格式命名,为:x00、x01等
split proc.tar.gz -b 2m -d proc.tar.gz #基本同上,只是生成的小文件名前缀是自定义的,为:proc.tar.gz00、proc.tar.gz01等
split a.txt -C 300k -d a.txt #将a.txt文本文件分割为多个小文件,并保持每个小文件的大小不超过300k字节,而且尽量保持每行的完整性

实际操作:
test@ubuntu:/mnt/share/lyt1.6_android4.4_source_codelsalyt1.64.4test@testubuntu:/mnt/share/lyt1.6android4.4sourcecode tar -czf - alyt_1.6_4.4/ | split -b 1024m -d - alyt_1.6_4.4.tar.gz
test@testubuntu:/mnt/share/lyt1.6_android4.4_source_code$ ll -h
total 5.3G
drwxrwxr-x 3 gps gps 4.0K 7月 27 18:17 ./
drwxrwxrwx 10 root root 4.0K 7月 17 10:57 ../
drwxrwxr-x 29 gps gps 4.0K 7月 18 13:59 alyt_1.6_4.4/
-rw-rw-r– 1 gps gps 1.0G 7月 27 18:08 alyt_1.6_4.4.tar.gz00
-rw-rw-r– 1 gps gps 1.0G 7月 27 18:10 alyt_1.6_4.4.tar.gz01
-rw-rw-r– 1 gps gps 1.0G 7月 27 18:12 alyt_1.6_4.4.tar.gz02
-rw-rw-r– 1 gps gps 1.0G 7月 27 18:14 alyt_1.6_4.4.tar.gz03
-rw-rw-r– 1 gps gps 1.0G 7月 27 18:17 alyt_1.6_4.4.tar.gz04
-rw-rw-r– 1 gps gps 277M 7月 27 18:17 alyt_1.6_4.4.tar.gz05

0 0
原创粉丝点击