フォルダ内のファイルのタイムスタンプを一括で変更したい → Gemini に作ってもらいました

パソコン関連

私はフリーランスの仕事をしています。
いつも、いただいた締切よりも早めに納品するように心がけています。
(先方が見て、ミスが見つかったときにリカバリする余裕があるので…)
でも、ごくたまに「納品は期日当日にして」と言われることもあります。
で、さらに、「作成物のタイムスタンプを納品日当日にして」と言われることもあります。
正直「めんどくさい…」と思うことも。
そういう案件に限って、作成物を出すのにすごく時間がかかったりするので、その当日作成するのだと不安だったりするんですよね。
そして、大体そういう作成物ってファイルサイズがすごく大きくて、タイムスタンプを変更するのに『一回開く』 → 『保存』するのがすごく手間だったりします。
(そして、ファイル数がすごくたくさんあったりする…)

以前…多分まだ Windows7 くらいの時代のときは、『タイムスタンプ変更ツール』的なものをダウンロードしてきて、それでヒョイッとタイムスタンプを変えていました。
ですが、Windows11 になったあたりから? なんかタイムスタンプ変更ツールがうまく使えないことが多いな、と。
で、どうするのがいいのか Gemini に聞いてみました。
すると、「PowerShell で変更できる、ただし戻せないから自己責任で」とのこと。
調べてみると、たしかにそういうコマンドがあるみたいですね。
いわゆる『黒い画面』を出して、『CD』(Change Directory)でその場所に移動して…とやるやつか、と思ったんですけど。
今回 Gemini が教えてくれたのは、「変更したいファイルがあるフォルダで右クリックを押し『ターミナルで開く』を選択すると、いちいち『CD』で移動しなくて大丈夫」だと。
へーーー、知らなかった!

で、肝心のコマンドですが、

Get-ChildItem  -Recurse | ForEach-Object { $_.CreationTime = "2026/04/06 19:00:00"; $_.LastWriteTime = "2026/04/06 19:00:00" }

目的のフォルダ内で右クリック、『ターミナルで開く』で黒画面が開いた後、↑を入力して『Enter』を押すと、そのフォルダ内のファイル・フォルダすべての『作成日時』と『更新日時』が『2026/4/4 19:00』に変更されます。
ファイルだけ(フォルダのタイムスタンプは変更しない)のときは、↓です。

Get-ChildItem -File -Recurse | ForEach-Object { $_.CreationTime = "2026/04/06 19:00:00"; $_.LastWriteTime = "2026/04/06 19:00:00" }

なるほど『-File』というのが追加になっているので、これでフォルダだけに絞れるんですね。
『ForEachObject』とあるので、くるくる回すってことですね。
で、「このコマンドで、時間が好きに変更できて、ボタンを押したら今現在の時間にリセットできて、コマンドのコピーボタンも付いていて、実行手順も記載されているページ、作って~」とお願いしたら、作ってくれちゃいました。
すごいな…。
なんかしらんけど、Mac/Linux 用まで作ってくれた…持ってないけど…。

年に数回あるかどうか、というレベルですが、これで面倒くさい作業をやる必要がなくなりました。
わーい、ありがたいです。
一応、下に公開させてもらいます。
使用するときは、元アイテムの複製も作っておいてくださいね。

‎Gemini - direct access to Google AI
Created with Gemini

人のものを使うのがちょっと…と思う方は、Gemini などの AI さんにお願いしたら同じようなものを作ってもらえると思います。
以前作ってもらった PDF を1枚ずつ画像にするツールも、本当に便利に使っています。

今度はどんなものを作ってもらおうかなぁ。
本当に、夢が広がりますねー。

さちこ

40代2児の母。2011年からフリーランスやってます。東京の東の方在住。
第一子が発達グレー男児で、彼が将来彼の妹に迷惑かけずに生きていけるよう、日々奮闘中です。

さちこをフォローする
パソコン関連
シェアする
さちこをフォローする

コメント

タイトルとURLをコピーしました