M
$match = "500 "
Select-String -Path C:\00000\*.txt -Pattern $match | Select-Object -Property filename | Set-Content fn.txt (нахожу файлы с записью $match ..и записываю имя файла ..тут хотелось бы искать только по первым трем строкам файла, ибо далее по файлу тоже изредка встречаются значения 500- в данном случае и запись дублируется с названием файла)
gc fn.txt | sort | get-unique > unique.txt (собственно удаляю повторы если значение еще по файлу находится , но по ошибки записанные файлы никак не опознать)
Get-Content Unique.txt | foreach-object {$_ -replace "^.*?(GG.*)",'$1'} | Set-Content out.txt (обрезаю начало строк с "файл найме=" )
Get-Content out.txt | ForEach-Object {$_ -replace 't\}', 't' } | Set-Content out2.txt ( убираю лишнюю скобку в конце строки, тут не разобрался в синтаксисе как правильно указать фигурную скобку..поэтому убираю букву вместе со скобкой и потом добавляю букву обратно..впринципе не критично)))
$it=Get-Content out2.txt
Move-Item $it -Destination "C:\x5\" (переношу отфильтрованные файлы)