我有一個腳本,用於在目錄中的文件內容中搜索一系列字符串(存儲在txt文件中)。我想修改它也列出找到的字符串周圍的文本(這些是常規字符串,而不是正則表達式)。我玩了很多,似乎我需要使用-Context,但我不知道如何從中獲取文本。在Powershell選擇字符串中使用上下文
另外,我正在搜索的文件可能沒有換行符,所以如果它只能在搜索詞前後獲得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,但不知道如何。
好點。固定。 –
您也可以將檢查修改爲「if($ result)'哪(在我眼裏)讀得更好。但是,也許我在PowerShell中使用了太多的高爾夫球;) – Joey
這會使'$ result'看起來像一個布爾值,事實並非如此。即使語言允許,我也希望避免這種混淆。 –