2014年10月15日 星期三

利用windows指令執行備份(增加時間參數)



差異備份

XCOPY 來源 目的  /D /K /E /Y /C

/D:日期,不指定則備份日期不同的資料
/K:複製屬性。一般 Xcopy 將會重設唯讀屬性。
/E:複製每個目錄及子目錄,包含空目錄。
/Y:不要提示您確認是否要覆寫已存在的目的地檔案。
/C:即使發生錯誤,仍繼續複製。
最近想說只備份當天的資料就好了,雖然有日期的參數但是總不可能自己天天用手打
就發現了windows也有類似時間的參數
下指令echo %date%會顯示當天的時間
但XCOPY的時間參數是m-d-y,跟windows秀出來的格式不同
不過還好windows也有類似Linux的cut功能
如要抓2015這四個數字方法為:%date:~0,4%;這個意思就是顯示出來的字元從第0個字元開始抓後面4個字元,這樣抓出來就是2015
如要抓月份方法為:%date:~5,2%;這樣就可以抓出05這兩個數字了
日期就以此類堆
這樣XCOPY的格式就可以自己寫出來了,以下範例
XCOPY 來源位置 /D:%date:~5,2%-%date:~8,2%-%date:~0,4% /K /E /Y /C 目的位置
這樣抓出來的資料就一直會是當天的資料了

備份刪除

forfiles /p 目錄位置 /d -7 /c "cmd /c del @path"

指令為刪除7天前的資料,7天為修改日期




By Johnny