Windows 7 備份 robocopy(差異性備份)


電腦突然所有的程式都當掉,重開機後畫面顯示檢查到硬碟有問題,幸好資料還能以外接硬碟的方式還原回來。
於是在網上搜尋簡單的備份軟體,結果發現了Win7的一個指令robocopy可以符合我的需求。
robocopy除了有差異性備份的功能之外,還可以指定多個執行緒來複製(預設為8個),也可以輸出log。

開啟cmd後,輸入robocopy /? 可以查詢參數的用法。

使用方式 :: ROBOCOPY source destination [file [file]...] [options]
 source :: 來源目錄 (drive:\path 或 \\server\share\path)。
 destination :: 目的地目錄  (drive:\path 或 \\server\share\path)。
 file :: 要複製的檔案  (名稱/萬用字元: 預設值是 "*.*")。

下面是我自己寫的一個簡單的備份腳本(bk.bat),準備在每天的中午自動幫我備份

@echo off
robocopy "D:\test001"  "\\server_name\test001"  /MIR /R:3 /NFL /NDL /NJH /MT:10
pause

參數說明:
 /MIR     等於 /E 加上 /PURGE
/E     複製子目錄,包括空的子目錄
/PURGE     如果目的端有來源端不存在的檔案或目錄,則刪除目的端的檔案     
/R      失敗複本的重試次數
/NFL    畫面上不會秀出備份檔案的明細
 /NDL    畫面上不會秀出備份目錄的明細
/NJH     畫面上不會秀出工作標頭
/MT     以 n 個執行緒執行多執行緒複製,n 必須至少為 1,但不可以大於 128

下圖是腳本執行的畫面:


最後把bk.bat加入排程就可以了。