zu konvertieren Ich stelle das unten, das macht den Job. Die Ausgabe ist jedoch nicht sehr praktikabel. Also wollte ich das alles in eine CSV mit Export-Csv
ausgeben. Ich bin mir bewusst, dass ich dies tun kann, indem ich auf eine ForEach-Object
Abfrage umschalte, aber ich bin nicht ganz sicher, wie man das erreicht.Skript muss konvertiert werden, um in CSV
Ich habe einen Versuch hinzugefügt, es in der Hoffnung auf ein wenig Hilfe zu konvertieren. Ich bin mir nicht sicher, wie man die Variable für jedes Objekt spezifiziert. Zum Beispiel ruft der erste Abschnitt alle Domänen in der Gesamtstruktur auf. Wie verwende ich jede Antwort in der nächsten übermittelten Abfrage? und so weiter.
$domains = (Get-ADForest).Domains
$controllers = @()
$worked = $false
foreach ($domain in $domains) {
$controller = Get-ADDomainController -Discover -ForceDiscover -DomainName $domain |
Select-Object HostName
$controllers += $controller
}
while (-not $worked) {
try {
foreach ($item in $controllers) {
$value = $item.HostName.Value
Write-Host $value
Write-Host 'Domain Admins'
Get-ADGroupMember -Identity 'Domain Admins' -Server $value |
Get-ADUser -Properties name, samaccountname, Description, EmailAddress |
Where {$_.Enabled -eq $true} |
Format-Table Name, SamAccountName, Description, EmailAddress -AutoSize
}
$worked = $true
} catch {}
}
Conversion Versuch
ForEach-Object{
(Get-ADForest).domains | Get-ADDomainController -Discover -ForceDiscover -DomainName $domain |Select-Object HostName | Get-ADGroupMember -identity 'Domain Admins' -Server $value | Get-ADUser -Properties samaccountname, Description, EmailAddress | Where {$_.Enabled -eq $true}
}| Export-Csv -Path "$HOME/Desktop/DomainAdmins.csv" samaccountname, Description, EmailAddress -AutoSize
Ersetzen 'Format-Table' mit' Export-Csv -Append'. –
auch, warum verwenden Sie $ gearbeitet? das macht keinen Sinn. – 4c74356b41
@ 4c74356b41 Werfen Sie einen Blick auf die dritte Zeile von unten. Die Variable wird verwendet, um die "while" -Schleife zu beenden, nachdem die foreach-Schleife ohne einen Abschlussfehler gelaufen ist. Ein bisschen peinlich, aber sollte funktionieren. –