ryo-memorandum94の日記

個人開発と副業挑戦の日記です!

【PowerShell】ファイルの更新日時が変わらない!?初心者がハマる「代入」の罠

初めまして、Ryoと申します。

私のPowerShell開発時の困ったを
メモも兼ねてブログを残します。

■ 解決したい悩み

「うっかり保存して更新日時が変わっちゃった!」
「写真の順番を整理するために、1分ずつ時間をずらしたい」

そんな時に便利なPowerShellでのファイルの更新時間変更!

しかし、僕がハマった大きな落とし穴・・・

■ ハマったポイント:計算しただけでは反映されない

最初、こう書いてしまいました。

#PowerShell
$fileTime.AddMinutes(1)

この一文を、もうすでにファイルの更新日時を1分増加させたと勘違い・・・
これだと、画面に「1分足した時間が表示されるだけ」で、実際のファイルの日時は1ミリも変わりません。

■ 正解は「結果を代入する」こと!

#PowerShell
$newTime = $fileTime.AddMinutes(1) # 計算結果を変数に入れる
$file.LastWriteTime = $newTime    # プロパティに代入して上書き!

「計算」と「反映(代入)」はセットで覚えるのがコツのようですね!

■ 編集後記

自分の仕事やスキルを少しでも活かしたくてPowerShellにて個人開発をはじめました。
現在、この仕組みを使った「写真整理ツール」を個人開発しています。
この記事もチャレンジの一環だったり!
未経験からエンジニア×副業に挑戦するドキュメンタリーとして、開発の裏側も発信していくので、ぜひチェックしてください!

↓↓↓ 副業挑戦!奮闘日記 ↓↓↓

ryo-memorandum94.hateblo.jp