LevT
Platinum Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору iNNOKENTIY21 1) зря ты стараешься экономить процессорные такты за счёт своего труда и простоты использования результата Не нужны ни брейки ни ретурны, ни множественные параметрсеты Код: $Drivers = Get-WindowsDriver -Online $Grouped = $Drivers | Group-Object -Property { ([IO.FileInfo] $_.OriginalFileName).Name } $MoreOne = $Grouped | Where-Object -Property Count -GT 1 $OldVers = $MoreOne | ForEach-Object -Process { $_.Group | Sort-Object -Property { [Version] $_.Version } | Select-Object -SkipLast 1 } $OldDate = $MoreOne | ForEach-Object -Process { $_.Group | Sort-Object -Property { $_.Date } | Select-Object -SkipLast 1 } | 2) зря ты используешь Sort-Object и Format-Table для показа результатов скрипта, который предназначен для подгрузки в консоль и использования там эникеем. Этим ты блокируешь более продвинутое использование его как командлета в своих "трубопроводах". Вызов повторно используемого инструмента должен собирать нужные данные, и всё. Сортировать их и форматировать вывод нужно там и тогда, когда и где твой инструмент используется. Или человеком за консолью интерактивно, или программистом-трубопроводчиком. Тогда, когда им это понадобится. Если ты отвечаешь за успех эникея за консолью, можно попытаться его научить сортировать и форматировать результат. Если он совсем альтернативно одарён, можно дать ему однострочник типа Код: $Drivers | Sort-Object -Property ClassName, ProviderName, Date | Format-Table -Property Driver, CatalogFile, ClassDescription, ProviderName, Date, Version, BootCritical, IsOldVersion, IsOldDate | Что Add-Member можно юзать изящнее, ты знаешь сам. | Всего записей: 17727 | Зарегистр. 14-10-2001 | Отправлено: 19:19 26-08-2020 | Исправлено: LevT, 19:52 26-08-2020 |
|