Поиск драйверов при помощи PowerShell

Информацию об установленных драйверах можно узнать при помощи утилиты driverquery.exe, только информация не всегда полезная

> driverquery.exe /V
 
Module Name  Display Name           Description            Driver Type   Start Mode State      Status     Accept Stop Accept Pause Paged Pool Code(bytes BSS(byLink Date              Path                                             Init(bytes
============ ====================== ====================== ============= ========== ========== ========== =========== ============ ========== ========== ============================ ================================================ ==========
 
61883        Устройство 61883       Устройство 61883       Kernel        Manual     Stopped    OK         FALSE       FALSE        768        40я832     0      13.04.2008 21:46:19    C:\WINDOWS\system32\DRIVERS\61883.sys            1я792

Дополнительно можно отформатировать вывод в формат CSV добавив опцию /FO CSV.

PS> driverquery.exe /v /FO CSV
"Module Name","Display Name","Description","Driver Type","Start Mode","State","S
tatus","Accept Stop","Accept Pause","Paged Pool(bytes)","Code(bytes)","BSS(bytes
)","Link Date","Path","Init(bytes)"
61883","Kernel","Manual","Stopped","OK","FALSE","FALSE","768","40я832","0","13.04.2008 21:46:19","C:\WINDOWS\system32\DRIVERS\61883.sys","1я792"

Powershell может не только читать вывод консольного приложения, но и автоматически преобразовывать CSV в объект. То есть всего одной строкой мы получим всю нужную информацию о драйверах:

PS> driverquery.exe /v /FO CSV | ConvertFrom-CSV | Select-Object 'Display Name',
 'Start Mode', 'Paged Pool(bytes)', Path
 
Display Name        Start Mode          Paged Pool(bytes)   Path
------------        ----------          -----------------   ----
OHCI-konformer 1... Manual              4.096               C:\Windows\syste...
Microsoft ACPI-T... Boot                90.112              C:\Windows\syste...
ACPI-Energieanze... Manual              4.096               C:\Windows\syste...
(...)

Так как CSV данные только возвращает полный путь к драйверу, который не всегда помещается в строку. Поэтому немного сценарий можно изменить оставив только имя файла:

PS> $col1 = @{Name='File Name'; Expression={ Split-Path $_.Path -Leaf } }
PS> driverquery.exe /v /FO CSV | ConvertFrom-CSV | Select-Object 'Display Name',
 'Start Mode', 'Paged Pool(bytes)', $col1 | Sort-Object 'Display Name'
 
Display Name        Start Mode          Paged Pool(bytes)   File Name
------------        ----------          -----------------   ---------
ACPI-Energieanze... Manual              4.096               acpipmi.sys
adp94xx             Manual              0                   adp94xx.sys
adpahci             Manual              0                   adpahci.sys
adpu320             Manual              0                   adpu320.sys
Agere Systems So... Manual              20.480              agrsm64.sys
aliide              Manual              0                   aliide.sys
AMD K8 Processor... Manual              28.672              amdk8.sys
AMD Processor Dr... Manual              28.672              amdppm.sys
amdide              Manual              0                   amdide.sys
amdsata             Manual              0                   amdsata.sys
(...)
Теги:

Понравилась статья? Оставьте комментарий или подпишитесь на RSS рассылку.

Комментарии

Комментариев пока что нет

Оставить комментарий

(required)

(required)