Windowsを使用しているとフォルダを同期したくなる時があると思うが、Windowsでのフォルダの同期のやり方についてまとめてみた。
目次
robocopyコマンドでフォルダ同期
Windowsでフォルダを同期する方法の一つにrobocopyのコマンドとバッチファイルを使って簡単に同期する方法がある。
下記内容をメモ帳などに貼り付けて、バッチファイルで保存して実行するだけで簡単に同期できる。
robocopy "同期元のフォルダ" "同期先のフォルダ" オプション
robocopyでの手順
手順についてはWindows 11での使い方となるが、その他のWindws 10などでもできるかと。
まずは、メモ帳を開く。メモ帳以外のテキストエディタでもOK。
![Windowsのメモ帳を開く](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-1.png)
下記サンプルのように、同期元のフォルダと同期先のパスのコマンドをメモ帳に入力する。サンプルのオプション「/MIR」は、ミラーリングモードでの同期で、同期元と同期先の間で差分を同期し、不要なファイルを削除してくれる。オプションはなくてもOK。
robocopy "C:\Users\tmp\old" "C:\Users\tmp\new" /MIR
コマンドをメモ帳に貼り付けたら、メモ帳を保存する。
![Windowsのメモ帳を保存する](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-2.png)
そしたら、ファイル名を下記サンプルのように「フォルダ同期.bat」とつけて保存する。この時、拡張子は.batで保存する。
![Windowsのバッチファイルで保存](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-3.png)
あとは、作成したフォルダ同期.batのファイルをダブルクリックするだけで、簡単に同期できる。
![Windowsでバッチファイルでフォルダ同期](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-4.png)
robocopyのオプション
robocopyのオプションをいくつかピックアップしてみた。
- /MIR
- ミラーリングモードで同期。同期元と同期先の間で差分を同期し、不要なファイルを削除
- /S
- サブディレクトリをコピーするが、空のディレクトリはコピーしない
- /E
- 空のディレクトリを含むサブディレクトリをコピー
- /COPYALL
- ファイル情報をすべてコピー (/COPY:DATSOU と同等)
- /Z
- ネットワーク接続が切断された場合に、再開できるように断続的にファイルを転送
- /LOG:ログファイルパス
- ログを指定されたファイルに出力
- /R:回数
- 再試行する回数を指定。(デフォルトは1000000)
- /W:待機秒数
- 再試行までの待機時間を指定。(デフォルトは30秒)
フリーソフトFreeFlieSyncで同期
もう一つ、フリーソフトFreeFileSyncで同期する方法。
FreeFileSyncのダウンロード・インストール
まずは、下記ページにアクセス。
アクセスしてページを少しスクロールすると下記のような箇所があるのでWindows版のファイルをクリックしてダウンロード。
![FreeFileSyncをダウンロード](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-5.png)
ダウンロードフォルダに「FreeFileSync_13.4_Windows_Setup.exe」のようなファイル名のファイルをダウンロードできたら、ダブルクリックでインストールしておく。
FreeFileSyncでの手順
WindowsのスタートメニューからFreeFileSyncのソフトを起動したら、右上あたりの①矢印をクリックして、②ミラーを選択。今回の例は同期元フォルダから同期先フォルダへの同期を前提としての使い方なので、両方向からの同期の場合には「両方向」を選択してもらえれば。
![FreeFileSyncのミラーを選択](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-6.png)
そしたら、①同期元と②同期先にそれぞれ同期したいフォルダをドラッグ&ドロップし、③比較をクリック。
![FreeFileSyncに同期フォルダをドラッグ&ドロップ](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-7.png)
すると同期元のファイルと同期先のファイルが表示されるので、同期処理をクリック。
![FreeFileSyncでフォルダの同期](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-8.png)
確認画面が表示されるので、問題がなければ開始をクリックで同期処理が実行される。毎回この確認が不要な場合は「次回以降から表示しない」にチェックを。
![FreeFileSyncのフォルダ同期確認](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-9.png)
同期が問題なさそうなら、このジョブ設定をバッチファイルに保存して次回からバッチファイルをダブルクリックするだけで、同期ができるようにしておくと便利だ。
左サイドにある一括ジョブ保存のアイコンをクリック。
![FreeFileSyncで一括ジョブを保存](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-10.png)
自動的に閉じるにチェックを入れて、別名保存をクリックしてファイルを保存する。
![FreeFileSyncでバッチファイルを保存](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-11.png)
こんな感じでバッチファイルが作成されるので、あとはダブルクリックでフォルダの同期が簡単にできる。
![FreeFileSyncのバッチファイル](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-12.png)
リアルタイムで同期
FreeFileSyncをインストールすると一緒にRealTimeSyncというツールがデスクトップにインストールされている。これを利用することでリアルタイムでのフォルダの同期も可能だ。
前提条件としては、上述のバッチファイルを予め作成しておく必要がある。
そしたら、デスクトップにある①RealTimeSyncのアイコンをダブルクリックでRealTimeSyncを起動し、上述で作成した②バッチファイルを監視フォルダの欄にドラッグ&ドロップする。
![RealTimeSyncでバッチファイルをドラッグ&ドロップ](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-13.png)
そうすると下記のように表示されるので、必要に応じて「コマンドを実行する前の最小アイドル時間(秒)」の時間を設定し、開始をクリックでリアルタイム同期が行われる。
![RealTimeSyncでWindowsでリアルタイムフォルダの同期](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-14.png)
アイドル時間は初期では10秒に設定されているが、小さくすればその分よりリアルタイムに近い時間で同期できるが、同期のたびにチラッと動作画面が表示されるので、フォルダの変更が多い場合には少し長めにもっと時間を長く、例えば3分とか5分おきとかにしてもいいかなと。ざっと参考になる分と秒をピックアップしてみた。
1分 | 60秒 |
3分 | 180秒 |
5分 | 300秒 |
10分 | 600秒 |
15分 | 900秒 |
30分 | 1800秒 |
60分 | 3600秒 |
なお、RealTimeSyncの停止方法だが、RealTimeSyncを閉じるとシステムトレイにアイコンが表示され、右クリックで終了を選べば停止できる。
![RealTimeSyncの停止方法](https://hep.eiz.jp/wp-content/uploads/2011/04/windows-foldar-sync-15.png)