【AIによる概要】
$date = Get-Date -Format "yyyyMMdd"
$targetFolder = ".\$date"
$outputFile = ".\search_result_$date.txt"
$headerText = "【検索結果】「あいうえお」が含まれるファイル一覧"
if (Test-Path $targetFolder) {
# 検索処理を実行し、結果を配列に格納
$matchedFiles = Get-ChildItem -Path $targetFolder -File |
Select-String -Pattern "あいうえお" |
Group-Object Path |
ForEach-Object { $_.Name }
# 1. 一度 UTF-8 でファイルを作成・追記していく
Set-Content -Path $outputFile -Value $headerText -Encoding utf8
if ($matchedFiles) {
Add-Content -Path $outputFile -Value "「あいうえお」が見つかりました。" -Encoding utf8
$matchedFiles | Out-File -FilePath $outputFile -Encoding utf8 -Append
Write-Host "検索が完了しました。ファイルが見つかりました。"
} else {
Add-Content -Path $outputFile -Value "対象ファイルはありませんでした。" -Encoding utf8
Write-Host "検索が完了しました。該当ファイルはありません。"
}
# 2. 【ここがポイント】完成したUTF-8ファイルを読み込み、Shift-JISに変換して上書きする
$content = Get-Content -Path $outputFile -Raw
$sjisEncoding = [System.Text.Encoding]::GetEncoding("shift_jis")
[System.IO.File]::WriteAllText((Convert-Path $outputFile), $content, $sjisEncoding)
} else {
Write-Warning "本日のフォルダ($targetFolder)が見つかりません。"
}
