RoboCopy(その1)利用を研究している

フォルダ間同期をVBSでやるとしたらの問合せを切っ掛けに、「RoboCopy」のことを知り、研究している。

これまでもいろいろ考えたり作ったりしてきていた。

今回もVBSで作り始めてみたものだが、この機能の要求度は、自分としての要求度だが、結構高くて、簡単にはいきそうもない。

過去にはVB6で作成したものがあり、少しずつ改良を重ねてきてかなり実用と思う。

だが、VB6も過去の開発環境となってしまい、維持に難しくなり、Windows10で何とか稼働できるまでにして、今は手を付けられない状態である。

 

ExcelVBA化も検討し試してみたこともあるが、ちょっとやってられない。

問題は処理所要時間の問題がある。

規模の大きいフォルダ構成でファイル数も膨大(数十万)となると、そのディレクトリ、ファイル情報を取得するだけでも相当な時間がかかることになり、とてもVBでは、おまけにVBAでは無理と思われるのである。

OSのDirコマンドの結果を利用しようかとも考えたりしたが、属性の扱いかたとかにも明確になり難い感じもあり、二の足を踏んでいるところ。

 

さて、本題のRoboCopyだが、ミラー化としては、かなりの機能と正確度が感じられ、期待が高い。

なのではあるが、自分としては、もうひとつ、確率したいものがある。

”ミラー処理を実行するにあたり、その過程で置換されて消えるファイル、それから、元が削除されたために削除されていくファイルだが、これで本当に良いのか、と。

単純なバックアップならそれでよいが、これを日次なり、もっと細かく時間単位でとか行うことを考えるとき、それは単なるバックアップではなく、何というか、、、、

何のためのバックアップであるか、と言うこと。

何かのために前に戻せるため。

それも、ひとつ前とだけでなく、さらに前までも。

戻りたいと考えたときに、それはどれのことだろう?

日次バックアップなら一日前か、と言うと、そうとは限らない。

いつの間にか数日経ってから気づいたときどうする?

世代管理のようなものが欲しい。

しかしそんなに多重にバックアップも難しい、無理だ。

そこで、差分管理の形を実現したいのが私の要望だ。

 

そのために考えているのが、(VB6では半分ほど、つまりデータ取得だけ、回復は手動で)、ミラー処理で消されていくものをある時期は保持することである。

 

 

 ⇒ その2につづくRoboCopy(その2)ミラー処理でバックアップは十分か? - kimuあれこれ