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