我有一个脚本,用于在目录中的文件内容中搜索一系列字符串(存储在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'看起来像一个布尔值,事实并非如此。即使语言允许,我也希望避免这种混淆。 –