ネットワーク間コピー時、フォルダのタイムスタンプ維持方法
どうも、ITサービス事業部のCと申します。
4月といえば一般的に見ると入社の時期だと思います。
フラットにも新しくメンバーが2名入社されました!
先日、入社歓迎会で2名の新メンバーとお会いすることができました、2名とも向上心が高い印象をでした。
今後のご活躍に期待しております。
さて、今回紹介する内容ですが、「ネットワーク間コピー時、フォルダのタイムスタンプ維持方法」こちらについてご紹介いたします。技術紹介というよりは、便利なコマンド紹介といったところでしょうか。
ローカル内のデーターをコピーする際は、手動でドラック&ドロップまたはCtrl+C でコピーを行い、貼り付けを行っても、特にタイムスタンプは元データと同じ日時で問題なくコピーできます。
しかし、ネットワーク経由(NAS)などからデータをローカルや別のストレージへコピーするとフォルダのタイムスタンプがコピーを行った日時になってしまいます。
データによって更新日時が変更されては困る場合があります。
それを回避するために、ネットワーク間であってもタイムスタンプの情報を取得できるコマンドがWindowsコマンドにあります。
「robocopy」コマンドです。
■robocopyコマンドの使用方法
Windows コマンドプロンプトで使用します。以下ご覧下さい。
F:¥>robocopy [コピー元][コピー先][オプション]
コピー元とコピー先にはフルパスで指定を行います。
以前、社内でNASにてファイルコピーを行い、実行した際に使用したオプションは以下のとおりです。
F:¥>robocopy [コピー元][コピー先] /E /COPY:DAT /DCOPY:T /NP /LOG [ログファイル名]
オプションについてご説明
/E 空のディレクトリを含むサブディレクトリをコピーします。
/COPY ファイルをコピー
コピーオプション:D データ A 属性 T タイムスタンプ
/DCOPY:T ディレクトリのタイムスタンプコピーします。
/NP コピー完了率の進行状況表示なしにします
/LOG ログを取得します。
その他、詳しい情報につきましては「robocopy /?」コマンドを実行でヘルプが表示されます。
※オプション「/DCOPY:T」は必ず入れてください、入れないとフォルダのタイムスタンプが取得されません。
こちらはrobocopyコマンドを使用しないでコピーしました。
本当にタイムスタンプはコピーされないのでしょうか。
まず、以下の図をご覧ください。
こちらがNASのフォルダのタイムスタンプです。
NASにあるフォルダをローカルへドラック&ドロップでコピーしてみました。
こちらがローカルタイムスタンプの状況になります。
図をご覧のとおり、フォルダのタイムスタンプがコピーした日時になっています。
コマンドを使用しないコピーでは、タイムスタンプのコピーは確認できませんでした。
こちらはrobocopyコマンドを使用し、コピーを行いました。
以下の図をご覧ください。
こちらが今回使用するコマンドのオプションです。
コピー元とコピー先は指定のものを入れましょう。
オプションに/DCOPY:T をいれましょう。
【実行結果】
実行後、コピーの詳細情報が表示されます。
問題なく実行し、正常に終了することができれば、コピー正常にできています。
また、コピー先のフォルダがコピー元のタイムスタンプと同じになるはずです。
以上、「ネットワーク間コピー時、フォルダのタイムスタンプ維持方法」についてでした。
「robocopy」コマンドにはオプションが多く、オプションを深く調べることでやれることが多いと思います。
どこまでできるかは、調べきれていないので、まだまだ学習が必要になりますね。
今回はこの辺で終わりとします。