Get all lines containing a string in a huge text file - as fast as possible?

后端 未结 5 917
伪装坚强ぢ
伪装坚强ぢ 2021-02-05 09:04

In Powershell, how to read and get as fast as possible the last line (or all the lines) which contains a specific string in a huge text file (about 200000 lines / 30 MBytes) ?

5条回答
  •  半阙折子戏
    2021-02-05 09:34

    $reader = New-Object System.IO.StreamReader("myfile.txt")
    
    $lines = @()
    
    if ($reader -ne $null) {
        while (!$reader.EndOfStream) {
            $line = $reader.ReadLine()
            if ($line.Contains("my_string")) {
                $lines += $line
            }
        }
    }
    
    $lines | Select-Object -Last 1
    

提交回复
热议问题