カレントディレクトリにあるYYYYMMDD_HHMMSSという形式から始まるjpgファイルを、HHに9時間足してYYYYMMDDHHMMSS_i.jpgというファイル名に置換するPowerShellコマンドを作成してください

もちろんです!以下のPowerShellスクリプトを使用して、カレントディレクトリにあるYYYYMMDD_HHMMSS形式のjpgファイル名を、HHに9時間足した形式のYYYYMMDDHHMMSS_i.jpgに変更することができます。

# カレントディレクトリに移動
Set-Location -Path "カレントディレクトリのパス"

# jpgファイルを取得
$files = Get-ChildItem -Filter "*.jpg"

# ファイル名の置換処理
foreach ($file in $files) {
    if ($file.Name -match "(\\\\d{8})_(\\\\d{2})(\\\\d{2})(\\\\d{2})") {
        $date = $matches[1]
        $hour = [int]$matches[2] + 9
        $minute = $matches[3]
        $second = $matches[4]

        # 24時間以上になった場合の処理(必要に応じて日付を変更)
        if ($hour -ge 24) {
            $hour = $hour - 24
            $date = (Get-Date ([datetime]::ParseExact($date, "yyyyMMdd", $null).AddDays(1)) -Format "yyyyMMdd")
        }

        # 新しいファイル名を作成
        $newName = "{0}{1:D2}{2}{3}_i.jpg" -f $date, $hour, $minute, $second

        # ファイル名を置換
        Rename-Item -Path $file.FullName -NewName $newName
    }
}

このスクリプトでは、ファイル名を正規表現で解析し、HHに9時間を加えた新しいファイル名を作成して置換しています。もしHHに9時間加えて24時間を超えた場合、日付を1日加算し、時間を24時間から引いた値にしています。

実行する際には、Set-Location -Path "カレントディレクトリのパス"の部分を適切なディレクトリに変更してください。

ファイル名を変更するとき Rename 「旧ファイル名(ディレクトリパスを含まない)」 -> 「新ファイル名」という文章をコンソールに表示するような処理を追加してください

もちろんです!以下のスクリプトに、リネームの際にコンソールにメッセージを表示する処理を追加しました。

# カレントディレクトリに移動
Set-Location -Path "カレントディレクトリのパス"

# jpgファイルを取得
$files = Get-ChildItem -Filter "*.jpg"

# ファイル名の置換処理
foreach ($file in $files) {
    if ($file.Name -match "(\\\\d{8})_(\\\\d{2})(\\\\d{2})(\\\\d{2})") {
        $date = $matches[1]
        $hour = [int]$matches[2] + 9
        $minute = $matches[3]
        $second = $matches[4]

        # 24時間以上になった場合の処理(必要に応じて日付を変更)
        if ($hour -ge 24) {
            $hour = $hour - 24
            $date = (Get-Date ([datetime]::ParseExact($date, "yyyyMMdd", $null).AddDays(1)) -Format "yyyyMMdd")
        }

        # 新しいファイル名を作成
        $newName = "{0}{1:D2}{2}{3}_i.jpg" -f $date, $hour, $minute, $second

        # リネームのメッセージを表示
        Write-Output ("Rename 「{0}」 -> 「{1}」" -f $file.Name, $newName)

        # ファイル名を置換
        Rename-Item -Path $file.FullName -NewName $newName
    }
}

このスクリプトでは、Rename 「旧ファイル名」 -> 「新ファイル名」というメッセージをコンソールに表示するために、Write-Outputコマンドを使用しています。この方法で、各ファイルがリネームされる際に、その情報が表示されるようになります。実行する際には、Set-Location -Path "カレントディレクトリのパス"の部分を適切なディレクトリに変更してください。