iT邦幫忙

0

檔案備份後(排除特定目錄)自動刪除的問題

有一個SERVER 2008檔案伺服器上的公用交換區,給大家自由交換檔案用,磁碟大小60GB,只有一個根目錄。這個交換區中有各式各樣亂七八糟目錄與文件經常塞爆,所以定期將要清理的東西先備份出來到網路另一暫存位址(\\n.n.n.n\xbk\)後進行清理。
但目錄中又有幾個子目錄是不能刪除的,這幾個目錄另有正式備份機制在,這個清理前的備份不用備。

請問可有適合的方式能自動化以上作業?
希望的方式是:
1.每月底將此目錄中「除了特定目錄」外的資料都複製到暫存備份位置。
2.暫存備份位置能自動建立日期時間目錄以利辨識。
3.備份完成後將來源「除了特定目錄」外的資料都刪除。

感謝!

看更多先前的討論...收起先前的討論...
搬移七天前檔案
mkdir E:\98Delete\%date:~0,4%%date:~5,2%%date:~8,2%
@robocopy E:\99Delete\ E:\98Delete\%date:~0,4%%date:~5,2%%date:~8,2% /s *.* /maxage:999 /minage:7 /move /v /fp /TS /tee /log+:E:\97Temp\move7DaysBefore_%date:~0,4%%date:~5,2%%date:~8,2%.log
1.建立日期為名稱的目錄
2.搬移檔案
3.建立LOG
hector958 iT邦研究生 2 級 ‧ 2012-04-26 09:19:51 檢舉
感謝!
來測試看看!
hector958 iT邦研究生 2 級 ‧ 2012-04-26 11:59:43 檢舉
假設來源是H槽的S目錄,目標是H槽的T目錄,我這樣寫:
測試執行只建立LOG檔
set _bktime=%date:~0,2%-%date:~3,2%-%date:~6,4%-%time:~0,2%_%time:~3,2%_%time:~6,2%
@robocopy h:\s h:\t\%_bktime% /E /MOVE /XD dirs h:\s\A /V /FP /TS /log+:h:\t\%_bktime%-TestRun.log /L


真正執行
set _bktime=%date:~0,2%-%date:~3,2%-%date:~6,4%-%time:~0,2%_%time:~3,2%_%time:~6,2%
mkdir h:\t\%_bktime%
@robocopy h:\s h:\t\%_bktime% /E /MOVE /XD dirs h:\s\AA /V /FP /TS /log+:h:\t\%_bktime%-RealClean.log


1.設定變數_bktime,取日期值第0位開始兩位數-第3位開始兩位數-第6位開始四位數-取時間值第0位開始兩位數_第3位開始兩位數_第六位開始兩位數。
這樣讓變數_bktime成為04-26-2012-10_25_38
2.目標處建立名稱為日期時間變數的資料夾
3.利用robocopy把來源移動去前一動作在目標建的資料夾:
/E :: 複製子目錄,包括空的子目錄。
/MOVE :: 移動檔案和目錄 (複製後從來源刪除)。
/XD dirs [dirs]... :: 排除符合指定名稱/路徑的目錄。

/V :: 產生詳細資訊輸出,顯示略過的檔案。
/FP :: 在輸出中包含檔案的完整路徑名稱。
/TS :: 在輸出中包含來源檔案時間戳記。
/LOG+:file :: 輸出狀態至記錄檔 (附加至現有的記錄檔)。

測試之後應該OK了,只是如果來源檔案開啟中,該檔案所在目錄會刪不掉,還要再來研究看看怎解。
感謝!!
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

4
ycl8000
iT邦高手 1 級 ‧ 2012-04-20 14:35:51
最佳解答

試一下這套免費備份軟體 cobian backup
1.每月底將此目錄中「除了特定目錄」外的資料都複製到暫存備份位置。....OK
2.暫存備份位置能自動建立日期時間目錄以利辨識。.....OK
3.備份完成後將來源「除了特定目錄」外的資料都刪除。.....OK

hector958 iT邦研究生 2 級 ‧ 2012-04-20 15:29:45 檢舉

抱歉,找了半天沒有找到能將來源資料刪除的設定處,我裝的是11BETA版,能指點一二嗎?感謝!!

ycl8000 iT邦高手 1 級 ‧ 2012-04-24 15:06:51 檢舉

我用的是9.5.1.212,在建立備份工作時,在處理事件那邊有備份之前與備份之後,
在備份之後這邊加入將來源刪除刪除的批次檔就可以了.

hector958 iT邦研究生 2 級 ‧ 2012-04-26 09:18:32 檢舉

只是這樣有辦法在第三步批次檔中過濾掉一些必須保留的資料而將其他全刪嗎?

4
welong
iT邦新手 3 級 ‧ 2012-04-23 01:17:36

at 配合 robocopy 可以應該可以滿足您的需求
/XD dirs [dirs]... :: eXclude Directories matching given names/paths
/MOVE :: MOVE files AND dirs (delete from source after copying)

或用schtasks也可以吧

我要發表回答

立即登入回答