Экспорт установленного программного обеспечения в CSV из нескольких удаленных систем - PullRequest
0 голосов
/ 18 мая 2018

Мой скрипт (в некоторой степени) делает то, что должен делать, если мне нужна информация с локального ПК.У меня это достигает TXT-файла для списка компьютеров.Сценарий прочитает список и покажет «Обработка: ...» для списка компьютеров, но экспорт покажет только локальную систему.Даже если я удалю свой локальный ПК из txt-файла, экспорт в csv по-прежнему показывает только локальную систему.Это создает правильные столбцы и заполняет соответственно.Мне просто нужно, чтобы получить данные из удаленных систем.Поскольку сценарий будет использоваться несколькими людьми, переменные позволяют файлам txt и выходному файлу находиться в их системах.

Function Export-InstalledSoftware {
    Process {
        if (Test-Connection -ComputerName $_ -count 1 -quiet)
            {
            echo "Processing: $env:COMPUTERNAME"    
                Get-ItemProperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*,HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* `
                    | Select-object @{n='ComputerName';e={$env:COMPUTERNAME}},@{n='DisplayName';e={$_.displayName}},@{n='Publisher';e={$_.Publisher}},@{n='DisplayVersion';e={$_.DisplayVersion}} `
                    | Sort displayName `
                    | Export-CSV C:\Users\$(get-content env:username)\Desktop\"SoftwareQuery_"$(get-date -f yyyy-MM-dd)".csv" -NoTypeInformation -Encoding ASCII
            }
        }
    }

Get-Content "C:\Users\$(get-content env:username)\Desktop\systems.txt" -readcount 1 | Export-InstalledSoftware
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...