アプリ版:「スタンプのみでお礼する」機能のリリースについて

とある事情があり、3000個ほどのファイルを一括して作成日時を作成日時順を保ったまま各ファイルごとに12時間後に変更する方法を探しています。
ある程度検索等で調べた限り、「Power Shell」を使い、コマンド

Set-Itemproperty "*" -name CreationTime -value "2020/02/03 20:20:20"

のような形で実行すれば可能なのではないかと思っているのですが、こちらの構文では3000個のファイルが一定の時刻になってしまい並べ替えをする際などに不都合があります。

各ファイルごとに「+12時間」作成日時をシフトさせるにはどのような構文になるのか、ご教示いただけますと助かります。

A 回答 (3件)

ls -File | % {sp $_.Name -N CreationTime -V $_.CreationTime.AddHo

urs(12)}
    • good
    • 0

Get-ChildItem でファイル情報を FileInfo 型で取得できます



ファイルの作成日時は DateTime 型で取得または設定できます
https://learn.microsoft.com/ja-jp/dotnet/api/sys …

DateTime は時刻の計算ができます
https://learn.microsoft.com/ja-jp/dotnet/api/sys …

大量ファイルがあるなら、個別処理を繰り返しましょう
Get-ChildItem | % { echo $_.Name を処理 }

以上を組み合わせたスクリプトを書いて実行しましょう
https://learn.microsoft.com/ja-jp/powershell/mod …
    • good
    • 0

「日付を取得」し、それに「12時間足し」目的の値を作り、それを指定すれば良い。



あと少しで、頑張って調べてみましょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!