Отображаемые данные можно организовать, чтобы упростить сканирование с помощью командлета Sort-Object. Командлет Sort-Object принимает имена одного или нескольких свойств для сортировки и возвращает данные, отсортированные по значениям этих свойств.
Рассмотрим проблему перечисления экземпляров класса Win32_SystemDriver. Чтобы отсортировать данные сначала по свойству State, а затем по свойству Name, введите следующую команду:
Get-WmiObject -Class Win32_SystemDriver | Sort-Object -Property State,Name | Format-Table -Property Name,State,Started,DisplayName -AutoSize -Wrap
Несмотря на длину отображаемого текста, можно увидеть, что элементы с одинаковым состоянием сгруппированы:
Name State Started DisplayName ---- ----- ------- ----------- ACPI Running True Microsoft ACPI Driver AFD Running True AFD AmdK7 Running True AMD K7 Processor Driver AsyncMac Running True RAS Asynchronous Media Driver ... Abiosdsk Stopped False Abiosdsk ACPIEC Stopped False ACPIEC aec Stopped False Microsoft Kernel Acoustic Echo Canceller ...
Объекты можно сортировать в обратном порядке, указав параметр Descending. Это изменяет порядок сортировки таким образом, что имена сортируются в обратном алфавитном порядке, а числа — по убыванию.
PS> Get-WmiObject -Class Win32_SystemDriver | Sort-Object -Property State,Name -Descending | Format-Table -Property Name,State,Started,DisplayName -AutoSize -Wrap Name State Started DisplayName ---- ----- ------- ----------- WS2IFSL Stopped False Windows Socket 2.0 Non-IFS Service Provider Supp ort Environment wceusbsh Stopped False Windows CE USB Serial Host Driver... ... wdmaud Running True Microsoft WINMM WDM Audio Compatibility Driver Wanarp Running True Remote Access IP ARP Driver ...