В настоящее время я пишу скрипт для извлечения записей реестра из списка удаленных серверов и экспорта в CSV.
У меня есть это, и оно работает (я собираюсь очистить обработку ошибокпозже), но вывод не совсем то, что я хочу произвести, так как он плохо экспортируется в CSV.
$DataList = New-Object System.Collections.ArrayList
foreach ($Target in $ImportData) {
Write-Host "Scanning" $Target.ComputerName ":" -NoNewline
$RegData = Get-RegValue -ComputerName $($Target.ComputerName) -Hive $RegHive -Key $KeyName
if (!$RegData) {
Write-Host "No data found for" $Target.ComputerName
[void]$DataList.Add([PSCustomObject]@{
ComputerName = $Target.ComputerName
Hive ="No Data"
Key = ""
Value = ""
Data = ""
Type = ""
})
} else {
$DataList.Add($RegData)
Write-Host "Done"
}
}
$DataList
Вывод выглядит следующим образом:
ComputerName Hive Key Value Data
------------ ---- --- ----- ---
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... AssetNumber 987
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... BuildDate 04/
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... iLODefaultPwd NA
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... OwnerContactDetails S G
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... OwnerName MS
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... OwnerPhone 643
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... PatchAutoManual Aut
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... ServerRole Man
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... ServerType Vir
SERVER1 LocalMachine SOFTWARE\CUSTOM\Serv... WarrantyExpires NA
Value :
Key :
Data :
Hive : None found
Type :
ComputerName : SERVER2
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... buildDate 15/
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... OperatingSystem Win
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... OwnerContactDetails M/S
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... OwnerName GM
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... OwnerPhone 131
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... PatchAutoManual -
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... ServerRole SNB
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... ServerType Phy
SERVER3 LocalMachine SOFTWARE\CUSTOM\Serv... WarrantyExpires -
Iподозреваю, что два типа объектов различны, но я не слишком много пишу в сценарии, и у меня есть полный ментальный блок для того, чтобы заставить мои пользовательские записи соответствовать тем, которые извлекаются автоматически.