ふとWindowsでtouchコマンドないかな?と調べていたら、PowerShellでファイルのプロパティ書き換えができることがわかりました。
ファイル作成時刻の書き換えかた
参考にしたサイトはWindows、ファイルのタイムスタンプ(作成日時、更新日時)を変更する|マコトのおもちゃ箱 ~ぼへぼへ自営業者の技術メモ~。
こちらのコードそのままにスクリプトを書きました。
Param([String] $file, [String] $date)
if (($file -eq "") -or ($date -eq "")) {
write-host "Usage: touch filename 'yyyy/MM/dd HH:mm:ss'"
} else {
$item=Get-Item -LiteralPath $file
$item.CreationTime = Get-Date $date
$item.LastWriteTime = Get-Date $date
}
これを$profileにエイリアスでtouchと名付けて保存しておきます。パラメータフォーマットを忘れないように、パラメータなしで起動するとヘルプを表示するようにしました。
エクスプローラは未来の時刻を表示しない
で、1900年代やら9999年代やらにタイムスタンプを書き換えて遊んでいたら、ファイル作成日を未来にした際、Windows7のエクスプローラでは表示されない時刻があることに気づきました。Σ( ̄。 ̄ノ)ノ

(*'-') temp >> touch test.1 '2108/1/1 8:59:58'
(*'-') temp >> touch test.2 '2108/1/1 8:59:59'
(*'-') temp >> gci
ディレクトリ: C:\temp
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2108/01/01 8:59 0 test.1
-a--- 2108/01/01 8:59 0 test.2
あと100年もしないうちにWindows7のエクスプローラでタイムスタンプ表示に不具合が発生してしまう!

時刻が午前9時なのはUTC+0900だからでしょう。協定世界時では2107年12月31日の23時59分58秒までしか対応していないということ。
59秒じゃなくて58秒なのは、古きMS-DOS時代からの制約を引きずっているのだろうな。。。
※FATファイルシステムの修正時タイムスタンプ精度が2秒単位