ニュースフォルダが毎日作成されるネットワークドライブにアクセスできます。このドライブの名前はGです。
G:\からD:\ WebUploadまでのすべてのフォルダをバックアップしたい
ファイルが多いので、最新のものだけをコピーしたいと思います。最新とは、G:からD:にまだバックアップされていないファイルを意味します。
このスクリプトを作成しました
robocopy G:\ D:\WebUpload\ /E /XO /R:3 /W:5 /XA:S /XF *.tmp *.bak /TEE /XD $RECYCLE.BIN "System Volume Information"
ただし、このスクリプトはコンテンツ全体を毎回コピーします。
スクリプトを編集して/ FFTを追加しました
robocopy G:\ D:\WebUpload\ /E /FFT /XO /R:3 /W:5 /XA:S /TEE /XD $RECYCLE.BIN "System Volume Information"
REM Source to Dest
REM /E Subfolder
REM /XO Exclude old files
REM /R Retry x times
REM /W sec between each retry
REM /TEE Display in the command Prompt
REM /XD Exclude [][]
20150304103_8という名前のフォルダーがG:\とD:\ WebUploadの両方の場所に存在することがわかります。
ただし、スクリプトはこのフォルダー内の各ファイルを分析します。 1秒/ファイルかかり、いくつかのフォルダに1000を超えるファイルがあります...長すぎます
タイムスタンプの比較を緩和するには、おそらく/FFT
が必要です。
編集-各ファイルシステムは、特定の精度でタイムスタンプを保存します。 NTFSの精度は、作成されたタイムスタンプと変更されたタイムスタンプの両方で1/10マイクロ秒です。 FATにはそれぞれ10ミリ秒と2秒があります[1]。したがって、NTFSからFATにコピーする場合、タイムスタンプは切り上げられ、次回の実行時にsrcとdstの間で比較したときにタイムスタンプが一致しないため、ファイルが再コピーされます。 /FFT
が行うのは、タイムスタンプを比較するときにrobocopyにFAT精度を使用させることだけで、より緩くなります。
[1] https://msdn.Microsoft.com/en-us/library/windows/desktop/ms724290%28v=vs.85%29.aspx