如何找到与多种图案匹配的线条



我试图在许多文件中找到从许多模式之一开始的行(日志解析(
有比更好的解决方案吗

Get-ChildItem -Filter *DBLog.txt | ForEach-Object {
$name = $_.Name
Get-Content -Path $_.FullName | 
Select-String -Pattern '^Msg*' |
Select-Object @{Name='File Name'; Expression={$name}}, LineNumber, Line
} |
Out-GridView

不幸的是,上面的脚本只搜索一个模式,而使用Where-Object,我没有找到该模式的行号。

看起来我让它变得不必要的复杂;(

Select-String -Path *DBLog.txt -Pattern '^Msg|^Warn' |
Select-Object FileName, LineNumber, Line |
Out-GridView

但我还有一个问题…你怎么在上面加一行?我要查找的内容(SQL Server错误(分为两行:

消息208,级别16,状态1,服务器LOCALHOST,行9
无效对象名称…

Select-String将只返回第一行

相关内容

  • 没有找到相关文章

最新更新