Powershell вывод данных по совпадению

возможно вопрос очень простой,но мне его никак нормально не реализовать так как он видимо должен использовать if,elseif.

Вот пример изначального кода который выполнян нужную задачу

$inputFile = "C:\Users\user\1\off.log" $outputFile = "C:\Users\user\1\test.txt" Get-Content -Encoding UTF8 $inputFile | Select-String -Pattern '(failed)|(broken)|(skipped)' -Context 0,3 | Out-File $outputFile

Находил нужную строку и последущие 3 строки с ошибкой.

Но вот развитие задачи оказалось сложнее,нужно искать по всем файлам в папке такие же патерны,но при нахождение любого из них,нужно в текущем документе найти патерн и отобразить fullname строку,потом патерн name ближайший к найденому патерну failed\broken\skipped,так как могут в файле не один раз встречаться name,после найти патерн message так же ближайший к failed,и уже после отобразить status failed.

Я уже просто закопался в эти if ,но пока получается чушь.Читать скрипты умею,а вот писать пока очень плохо.Вот пример одного из файлов,да это json


Ответы (0 шт):