ディレクトリ内のファイルの内容で一連の文字列 (txt ファイルに保存されている) を検索するスクリプトがあります。見つかった文字列の周りのテキストもリストするように変更したいと思います(これらは正規表現ではなく通常の文字列です)。私はたくさん遊んで、-Context を使用する必要があるようですが、そこからテキストを取得する方法がわかりません。
また、検索しているファイルには改行が含まれていない可能性があるため、検索語の前後の xx 文字だけを取得できるとよいでしょう。
これが私がこれまでに持っているものです(ファイル部分のループを省略しました):
$result = Get-Content $file.FullName | Select-String $control -quiet
If ($result -eq $True)
{
$match = $file.FullName
"Match on string : $control in file : $match" | Out-File $output -Append
Write-host "Match on string : $control in file : $match"
}
コンテキストを書き込めれば完璧です。$_Matches を使用する必要があるようですが、方法がわかりません。