在文本文件中搜索值并导出这些值

时间:2017-03-14 22:31:08

标签: powershell search text

我有一个包含对SID的引用的日志文件。我想搜索日志文件,找到以特定模式开头的任何值并导出结果。

使用PowerShell,我可以搜索该值,但它返回整行,我只对该值感兴趣。

Get-Content xxxservice.log | Where-Object { $_.Contains("S-1-5-21-1013323922") }

1 个答案:

答案 0 :(得分:1)

使用-match运算符代替.Contains()方法,因此您可以通过automatic variable $matches引用匹配:

Get-Content xxxservice.log |
  Where-Object { $_ -match 'S-1-5-21-1013323922[0-9-]*' } |
  ForEach-Object { $matches[0] }