Powershell - Get-ADForest
Hi,
ich habe da im Powershell ein Verständnisproblem.
Ich möchte alle Domänen einer Gesamtstruktur durchlaufen, um dann damit irgendwas machen zu können.
Warum geht dies
aber dies nicht
Hier kommt:
Wieso muss man das erst in einer Variable zwischenlagern?
Nebenbei:
Wie muss ich es schreiben, wenn ich die erste Variante als Einzeiler absetzen will? Mit einem Pipezeichen "|" gehts nicht.
E.
ich habe da im Powershell ein Verständnisproblem.
Ich möchte alle Domänen einer Gesamtstruktur durchlaufen, um dann damit irgendwas machen zu können.
Warum geht dies
$Domains = Get-ADForest
Foreach($Domain in $Domains.Domains) {Get-ADDomain $Domain}
aber dies nicht
Foreach($Domain in Get-ADForest.Domains) {Get-ADDomain $Domain}
Get-ADForest.Domains : Die Benennung "Get-ADForest.Domains" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und wiederholen Sie den Vorgang.
In Zeile:1 Zeichen:15
Foreach($D in Get-ADForest.Domains) {Get-ADDomain $D}
~~~~~~~~~~~~~~~~~~~~
CategoryInfo : ObjectNotFound: (Get-ADForest.Domains:String) , CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException
In Zeile:1 Zeichen:15
Foreach($D in Get-ADForest.Domains) {Get-ADDomain $D}
~~~~~~~~~~~~~~~~~~~~
CategoryInfo : ObjectNotFound: (Get-ADForest.Domains:String) , CommandNotFoundException
FullyQualifiedErrorId : CommandNotFoundException
Wieso muss man das erst in einer Variable zwischenlagern?
Nebenbei:
Wie muss ich es schreiben, wenn ich die erste Variante als Einzeiler absetzen will? Mit einem Pipezeichen "|" gehts nicht.
E.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 330309
Url: https://administrator.de/forum/powershell-get-adforest-330309.html
Ausgedruckt am: 07.04.2025 um 00:04 Uhr
6 Kommentare
Neuester Kommentar

Du musst Klammern um das CMDLet setzen damit du auf die Eigenschaften zugreifen kannst:
Einzeiler mit Foreach-Schleife (%{})
oder auch
usw.
Gruß
Foreach($Domain in (Get-ADForest).Domains) {
Get-ADDomain $Domain
}
Einzeiler mit Foreach-Schleife (%{})
(Get-ADForest).Domains | Get-ADDomain
Get-ADForest | select -Expand Domains | %{$_}
Gruß

Das ist nur eine Abkürzung für das foreach-object, also quasi die Foreach-Schleife für die Pipeline.
Genauso wie ?{} für das Where-Object die Abkürzung ist.
Genauso wie ?{} für das Where-Object die Abkürzung ist.

Rischtisch. Kriegscht a herzl 