Я пытаюсь сделать скрипт для обновления машин, которые используют старые драйверы.
Я могу получить устройства, на которые хочу настроить таргетинг, следующим образом:Get-WmiObject win32_pnpsigneddriver |where {$_.DeviceID -match "VEN_8086&DEV_0083"}
Теперь текущая версия драйвера для этого - 17.0.2, но на машине, на которой я тестирую, установлена версия 14.1.1.3.
Я хочу, чтобы моя строка кода использовала что-то вроде этого:
Get-WmiObject win32_pnpsigneddriver |
where {$_.DeviceID -match "VEN_8086&DEV_0083" -AND $_.DriverVersion -le 17.0.2.0}
это, конечно, не получается, так как вы не можете иметь два десятичных знака в числе. Если изменить мой код на:Get-WmiObject win32_pnpsigneddriver |where {$_.DeviceID -match "VEN_8086&DEV_0083" -AND $_.DriverVersion -le 17.0}
тогда я получаю ответ, который хочу, но, конечно, когда выйдет версия 17.0.9.9, а на моей целевой машине запущена 17.0.2.0, драйвер не будет обновлен.
Любые идеи о том, как я могу сравнить цифры, как это?