Beyond Compareで自動バックアップ

VistaになってからNTBackup(この呼び方で良いかは不明だが)で任意のフォルダのバックアップができなくなった気がする。できるのかもしれないがまったく設定方法がわからない。あとスケジューラで実行することもできないらしい。

そこでBeyond Compareでコマンドラインをたたいてバックアップというかミラーリングできないかと考えた。

ヘルプをみるとコマンドライン用のスクリプトが用意されているようだ。

BC2.exe @C:\BC2\MyScript.txt

な風に@をつけたファイル名を渡すと、そのファイルの中にあるスクリプトを実行してくれる。(@をつけないとスクリプトの実行はされず、単なるファイル比較のためのテキストファイルとして開かれてしまう)スクリプトはBeyondCompare独自のもので使えるコマンドについはヘルプに書いてある。

スクリプトに関してはあらかじめSessionを設定しておいても良いし、スクリプトで書いても良い。全部スクリプトで書いておくといろんなPCでも実行できてよいが今回はあらかじめSessionを設定しておくことにし、コピーされたくないフォルダのFilterをSessionに保存しておく。

スクリプトは

load "Arcadia(C:\-H:\)"
sync update:left->right

これでok。最初にSessionを読み込んで左から右へのアップデートを実行する。ちなみにsync mirrorを実行すると左にないファイルは右からも削除されてしまうので注意。完全に更新ファイルを同期するのであれば sync update:allにすればよし。

あとはこのスクリプトをsyncC2H.txtと保存。

バッチファイルで

"C:\Program Files\Beyond Compare 2\BC2.exe" @./syncC2H.txt

を実行し、
これをタスクで定期的に流せばウマー。