Назад | Перейти на главную страницу

Получить список серверов из AD, на которых установлено определенное программное обеспечение?

Можно ли получить список серверов из Active Directory, на которых установлено определенное программное обеспечение? Например, получите все серверы, на которых установлен wampserver версии 5.

Нет, не так, как вы задали вопрос. К сожалению, этой информации нет в Active Directory. Однако вы можете написать немного PowerShell, начиная с Get-ADComputer вероятно, с фильтром, чтобы просто получить серверные операционные системы, а затем передать его в запросы WMI или реестра, чтобы получить список установленного программного обеспечения - и, надеюсь, информация о версии, которую вы хотите, была записана там поставщиком.

Достаточно просто - конечно, вы также можете использовать дополнительные инструменты управления, такие как собственный SCCM от Microsoft, или сторонние инструменты инвентаризации, которые делают это за вас - некоторые даже бесплатны. Мне особенно нравится SpiceWorks.

Вы можете просмотреть существующий сценарий https://gallery.technet.microsoft.com/scriptcenter/Get-RemoteProgram-Get-list-de9fd2b4

Чтобы получить список компьютеров с Internet Explorer 11:

$result= @();
$programName = "Internet Explorer 11"
$computers = ("Computer1","Computer2","Computer3")
$computers | % { if ((Get-RemoteProgram -ComputerName $_).programname -contains $programName) { $result += $_}}
$result

Вы можете попробовать это поместить список серверов в текстовый файл или отфильтровать из AD

#$computer="get-content computers.txt"
#computers=Get-ADComputer -Filter {OperatingSystem -Like “Windows Server*”}
foreach ($Computers in $computer)
{
Get-WmiObject -query 'select * from win32_product' | where {$_.name -like "Ccleaner*"} |ft Name, Version,PsComputername | export-csv "$env:userprofile\desktop\software.csv"
}

Попробуйте поместить список серверов в текстовый файл или получить из объявления

#$computer="get-content computers.txt"
#$computers=Get-ADComputer -Filter {OperatingSystem -Like “Windows Server*”}
foreach ($Computers in $computer)
{
Get-WmiObject -query 'select * from win32_product' | where {$_.name -like "Ccleaner*"} |ft Name, Version,PsComputername | export-csv "$env:userprofile\desktop\software.csv"
}