我正在嘗試使用 robocopy 將檔案從來源目錄移至目標目錄。問題是 inetpub 郵件進程監視目標目錄,並快速鎖定和刪除放置在那裡的檔案。這似乎是發生的事情:
1)我打電話
Robocopy C:\test c:\test1 /COPY:D /MOV /IPG:50 /R:1000000 /W:30 /Z /Log:C:\robolog\RoboLog.txt
Robocopy 似乎忽略了 /D 開關,並將其包含在日誌中:
Source : C:\test\
Dest : c:\test1\
Files : *.*
Options : *.* /COPY:DT /MOV /Z /IPG:50 /R:1000000 /W:30
2)我懷疑Robocopy將資料複製到目的地,然後寫入時間戳,然後從來源目錄中刪除檔案。由於 inetpub 在 Robocopy 寫入時間戳之前刪除了一些文件,因此我在日誌中看到以下錯誤:
2011/08/18 10:17:06 錯誤 2 (0x00000002) 時間戳目標檔 C:\test\Foo.txt
受影響的檔案被複製,但它們也保留在來源目錄中
3) 由於檔案已複製但未刪除,Robocopy 失敗並出現錯誤 9。
有沒有辦法解決這個問題?如果我的評估是正確的,那麼如果我可以讓 Robocopy 僅複製資料並將時間戳記保留為預設值,那就可以了。
答案1
當您嘗試刪除檔案時,我有一種感覺檔案已鎖定。
看看使用卷影複製,這應該確保您獲得所需的檔案而不會刪除它們。
儘管這會使自動刪除檔案變得複雜。您需要編寫一個腳本(目前腳本的另一部分)來檢查和清理文件