LINUX向网盘上传大文件的方法
本方法仅适用于linux,对于Windows用户,可以参考本方法的思路,一样可以做到类似的效果。对于使用Linux的朋友,本方法是通用的,无需安装任何其他程序。
LINUX向网盘上传大文件的思路阐述
1基本思想是分块上传。因为各大网盘一般都对一次性上传的文件大小有限制,所以我的建议是不管多大的文件,分割成30M左右的小文件再分别上传。当然你也可以酌情修改这个尺寸,比如你所处的网络环境较好,那么你可以修改得更大一点。
2好处在于:
1. 如果机器故障,那么也只会导致这30M文件上传失败,如果你1G的文件传到90%,电脑突然死机,那你不得气死?
2. 小文件上传成功的概率很大。
3. 下载的时候,把这一组文件一并勾选,那么网盘平台一般会给你做成一个压缩包下载,下好了之后,你在本地解压,那么文件都整整齐齐在你的电脑里,合并起来也方便。
4. 事实上,你通过分割文件上传可以达到一种类似断点续传的效果,是不是感觉自带VIP光环呢?
开始动手
以一个叫“测试文件.test”的文件为例,它的大小为890.8M。虽然这个大小在很多网盘可以上传,但是考虑到上传成功率等因素,我们仍然可以将其切割后上传。
具体做法,cd到文件所在的目录,然后再使用命令:
split -d -b 30M 测试文件.test 测试文件.test_
简单解释:
split是专门用来切割文件的程序;
-d 表示让分割后的文件末尾用数字作序号;
-b 表示要分割成的文件块的大小,我设置的是30M,可以改成其他值;
30M不解释。类似的,你可以写100K,1G之类的参数,它都可以识别;
测试文件.test 是被分割的源文件;
测试文件.test_ 是表示文件块的名字,下划线后面将会是它的序号。
程序运行完毕,可以看到产生了如图的一堆30M的小文件(一共29个),它们的上传成功率是相当大的。
现在来考虑另一个问题,如何把这些小文件合并?
如前所述,下载后一般是一个压缩包的形式,你只需要解压,然后cd到这个目录。
使用命令:
cat 测试文件.test_* > 恢复文件.test
注意大于符号左右两边都有空格。
这个命令就是将所有小文件块合并成一个名叫“恢复文件.test”的文件。
至此,整个过程就结束了。