2013-10-28 41 views
0

我有一個外部硬盤驅動器,我懷疑是在它的出路。在那一刻,我可以從它傳輸文件,但只有一段時間。不幸的是,我有一個大於50GB的單個文件。我的解決方案是使用rsync一次傳輸一個特定的文件,讓驅動器休息(關閉它),並稍後恢復。使用rsync傳輸(停止,恢復)文件

我正在使用rsync --partial --progress --inplace --append -a /Volumes/Backup\ Drive/chris/Desktop/Recording\ Sessions/S1/Session\ 1/untitled ~/Desktop/temp來轉移它。 (該文件位於無標題的文件夾中,我正在將其移動到臨時文件夾中)但是,在停止並恢復之後,它似乎會覆蓋之前的文件嘗試,這意味着我沒有真正獲得任何進一步。

有什麼我失蹤了嗎? :X

三江源^ _^

編輯:還是不知道:\

回答

1

好,因爲這是一個編程網站,這裏有一個程序來做到這一點。我測試了它在OS X,但你一定要測試它的一些小文件,首先要確保它你想要做什麼:

#!/usr/bin/env python                         

import os 
import sys 

source = sys.argv[1] 
target = sys.argv[2] 
begin = int(sys.argv[3]) 
end = int(sys.argv[4]) 

mode = 'r+b' if os.path.exists(target) else 'w+b' 

with open(source, 'rb') as source_file, open(target, mode) as target_file: 
    source_file.seek(begin) 
    target_file.seek(begin) 
    buffer = source_file.read(end - begin) 
    target_file.write(buffer) 

你有四個參數運行此:源文件,目標,和兩個數字。第一個數字是開始複製的字節數(因此第一次運行時使用0)。第二個數字是要複製的字節數(不包括)。因此,在後續運行中,您總是使用前面的第四個參數作爲新的第三個參數(新的開始等於舊的結束)。就這樣繼續下去,直到完成,使用任何你喜歡的方式。

+0

這實際上比我期待的o-o Thankyou更有用!^_^ 儘管我一直認爲Stack Overflow是一個普通的編程/腳本/抨擊/普通高級計算站點,考慮到我們也有程序員.stackexchange.com。 –

+0

我試着運行腳本,當我運行它時,我得到了這個: –

+0

忽略那個評論 - 我試着運行腳本,當我運行它時,我得到了這個:http://pastebin.com/2UU3BCRD - 我試過了將http://pastebin.com/TKaU0DUr更改爲http://pastebin.com/VxA8Sbtm,然後得到這個錯誤:http://pastebin.com/MjQQNePg –