Windows PowerShellの「Set-ItemProperty」を使う

Windows 10で扱うファイルは、「作成日時」「更新日時」「アクセス日時」と称したタイムスタンプ情報を保持している。

  • すべてのファイルは各タイムスタンプを保持している

上図はテキストファイルのプロパティダイアログだが、「作成日時」は文字どおりファイルを作成した日時。「更新日時」はファイルを編集して保存するなど内容を変更した日時。「アクセス日時」はファイルをアプリなどで開いた際に変化するものだ(が、このアクセス日時はWindowsのバージョンによって動作が異なる)。

アクセス日時の利用価値は別の機会に触れるとして、今回はタイムスタンプ自体に注目する。Windows 10のGUIでは、各タイムスタンプを変更する設定項目を用意していない。コマンドプロンプトから実行するコマンドも同様で、通常では変えられないのだが、実はWindows PowerShellなら変更可能だ。

  • 「Win」+「X」キー→「I」キーと順に押すか、スタートを右クリック/長押しし、「Windows PowerShell」をクリック/タップする

  • ファイルの作成日時を現在の時間に変更するには、「Set-ItemProperty foo.txt -name CreationTime -value $(Get-Date)」と入力して「Enter」キーを押す。もちろんファイル名はご自身の環境に合わせて変更してほしい

  • ファイルの作成日時を指定して変更するには、「Set-ItemProperty foo.txt -name CreationTime -value "2020/01/01 00:00:00"」と入力して「Enter」キーを押す

上記は「作成日時」の変更だが、「更新日時」を変更する場合は、コマンドレットの引数「-name CreationTime」を「-name LastWriteTime」に、「アクセス日時」では「-name LastAccessTime」に変更してほしい。