我一直在搜索&使用Google搜索了很多關於這個問題,並且我已經知道如何比較兩個文件(哈希,校驗和等)。但這不是我所需要的。我需要下面描述。比較兩個版本的文件並對舊文件應用更改
讓我們假設我有一個文件,我已經備份了它。後來我對這個文件做了一些更改,所以我想將更改應用到備份版本。由於兩個文件可能足夠大並且變化很小,我不想重寫所有文件,因爲我打算通過互聯網(也許是FTP)備份它,這可能需要很長時間。
我怎麼看這個(樣品):
文件的備份版本(字節)
134 253 637 151
較新版本的文件(字節)
134 624 151 890
不是重寫所有字節,我們應該:
- change
253
到624
(變化字節) - 在文件的結尾(插入字節)除去
637
字節(除去字節) - 寫入
890
1,2,3-選項不必出現在一次在每種情況下。 請注意,備份文件可能位於其他地方,我只能通過互聯網訪問它(服務器可能會返回一些內容,以便我們可以比較文件)。
我該如何實現這一目標?我知道這是可能的,因爲我知道軟件在哪裏實現(但不知道如何)。 任何提示,教程等歡迎和高度appriciated。 在此先感謝。
您檢查了'diff'的實施? (http://en.wikipedia.org/wiki/Diff) –
是的,我已經看到了這一點,我知道我可以找到差異,但我實際上並沒有理解如何sohuld我轉移一些字節,並迫使他們被插入特定的地方......我應該將這些字節與附加地點號碼一起傳輸嗎? – GaaRa
你在比較文本或二進制信息 - 你可能想看看像http://www.daemonology.net/bsdiff/ – Slugart