У меня много больших текстовых файлов. И я ищу (в cmd.exe) список значений в них следующим образом:
findstr /i /n /g:strings.txt 1\*.* >results.txt
где strings.txt - это файл со всеми значениями, которые я ищу, а 1 - это папка, в которой находятся все мои текстовые файлы.
В предыдущих и следующих строках есть ценная информация, которую я могу найти с помощью findstr. Не могли бы вы помочь мне написать сценарий, чтобы в файле results.txt было 3 строки для каждого совпадения?
Powershell. В частности, -Context
параметр Select-String
Командлет предоставит вам контекст, окружающий выделенный текст.
PS C:\Users\ryan> gc .\temp.txt
1
2
3
4
5
6
7
8
9
10
PS C:\Users\ryan> gc .\temp.txt | Select-String '4' -Context 3
1
2
3
> 4
5
6
7