LINUX向網(wǎng)盤上傳大文件的方法
LINUX向網(wǎng)盤上傳大文件的方法
本方法僅適用于Linux,對于Windows用戶,可以參考本方法的思路,一樣可以做到類似的效果。對于使用Linux的朋友,本方法是通用的,無需安裝任何其他程序。
LINUX向網(wǎng)盤上傳大文件的思路闡述
1基本思想是分塊上傳。因?yàn)楦鞔缶W(wǎng)盤一般都對一次性上傳的文件大小有限制,所以我的建議是不管多大的文件,分割成30M左右的小文件再分別上傳。當(dāng)然你也可以酌情修改這個(gè)尺寸,比如你所處的網(wǎng)絡(luò)環(huán)境較好,那么你可以修改得更大一點(diǎn)。
2好處在于:
1. 如果機(jī)器故障,那么也只會導(dǎo)致這30M文件上傳失敗,如果你1G的文件傳到90%,電腦突然死機(jī),那你不得氣死?
2. 小文件上傳成功的概率很大。
3. 下載的時(shí)候,把這一組文件一并勾選,那么網(wǎng)盤平臺一般會給你做成一個(gè)壓縮包下載,下好了之后,你在本地解壓,那么文件都整整齊齊在你的電腦里,合并起來也方便。
4. 事實(shí)上,你通過分割文件上傳可以達(dá)到一種類似斷點(diǎn)續(xù)傳的效果,是不是感覺自帶VIP光環(huán)呢?
開始動手
以一個(gè)叫“測試文件.test”的文件為例,它的大小為890.8M。雖然這個(gè)大小在很多網(wǎng)盤可以上傳,但是考慮到上傳成功率等因素,我們?nèi)匀豢梢詫⑵淝懈詈笊蟼鳌?/p>
具體做法,cd到文件所在的目錄,然后再使用命令:
split -d -b 30M 測試文件.test 測試文件.test_
簡單解釋:
split是專門用來切割文件的程序;
-d 表示讓分割后的文件末尾用數(shù)字作序號;
-b 表示要分割成的文件塊的大小,我設(shè)置的是30M,可以改成其他值;
30M不解釋。類似的,你可以寫100K,1G之類的參數(shù),它都可以識別;
測試文件.test 是被分割的源文件;
測試文件.test_ 是表示文件塊的名字,下劃線后面將會是它的序號。
程序運(yùn)行完畢,可以看到產(chǎn)生了如圖的一堆30M的小文件(一共29個(gè)),它們的上傳成功率是相當(dāng)大的。
現(xiàn)在來考慮另一個(gè)問題,如何把這些小文件合并?
如前所述,下載后一般是一個(gè)壓縮包的形式,你只需要解壓,然后cd到這個(gè)目錄。
使用命令:
cat 測試文件.test_* > 恢復(fù)文件.test
注意大于符號左右兩邊都有空格。
這個(gè)命令就是將所有小文件塊合并成一個(gè)名叫“恢復(fù)文件.test”的文件。
至此,整個(gè)過程就結(jié)束了。