7 мощных методов получения списка установленного программного обеспечения с помощью PowerShell

Отслеживание программного обеспечения, установленного на вашем компьютере, важно для системных администраторов, а также для отдельных пользователей, которые хотят поддерживать организованную и оптимизированную систему. PowerShell, мощный язык сценариев в среде Windows, предлагает несколько методов быстрого и эффективного получения списка установленного программного обеспечения. В этой статье мы рассмотрим семь различных методов, каждый со своим примером кода, которые помогут вам получить полную инвентаризацию программного обеспечения с помощью PowerShell.

Метод 1: использование класса Win32_Product

$softwareList = Get-WmiObject -Class Win32_Product | Select-Object Name, Version, Vendor
$softwareList

Метод 2: использование реестра

$uninstallKey = 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*'
$softwareList = Get-ItemProperty -Path $uninstallKey | Select-Object DisplayName, DisplayVersion, Publisher
$softwareList

Метод 3: использование командлета Get-Item

$softwareList = Get-Item -Path 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*' |
    ForEach-Object { Get-ItemProperty -Path $_.PSPath } |
    Select-Object DisplayName, DisplayVersion, Publisher
$softwareList

Метод 4: использование командлета Get-Package (Windows 10 и более поздних версий)

$softwareList = Get-Package | Select-Object Name, Version, ProviderName
$softwareList

Метод 5: использование командлета Get-WindowsFeature (Windows Server)

$softwareList = Get-WindowsFeature | Where-Object { $_.Installed -eq 'True' } |
    Select-Object Name
$softwareList

Метод 6: Использование 7-Zip (для программного обеспечения, не зарегистрированного в реестре)

$softwareList = & 'C:\Program Files\7-Zip\7z.exe' l
$softwareList

Метод 7: использование модуля Get-InstalledPrograms (требуется установка)

Install-Module -Name Get-InstalledPrograms -Force
$softwareList = Get-InstalledProgram
$softwareList

Благодаря этим семи мощным методам у вас теперь есть набор инструментов для получения списка установленного программного обеспечения с помощью PowerShell. Независимо от того, используете ли вы WMI, реестр, встроенные командлеты или внешние инструменты, вы можете легко собрать полную информацию о программном обеспечении для системного администрирования или личного использования. Зная, какое программное обеспечение установлено в вашей системе, вы сможете лучше управлять обновлениями, устранять неполадки и поддерживать хорошо организованную вычислительную среду.