我在PowerShell中使用以下代码从大型txt文件中收集相关数据。
$sr = new-object System.io.streamreader(get-item c:\test.txt)
while (($line = $sr.ReadLine()) -ne $null) {
if ($line -match "data") { $line }
}
$sr.Dispose()
这很有效但是如果PowerShell的select-string -context 1,0
能够获得上面的行以及匹配的行,那将会非常有用。
有人可以帮忙吗?
答案 0 :(得分:2)
如果您只需要前一行,则以下内容就足够了:
$sr = new-object System.io.streamreader(get-item c:\test.txt)
while (($line = $sr.ReadLine()) -ne $null) {
if ($line -match "data") { $prev_line, $line }
$prev_line = $line
}
$sr.Dispose()