Jump to content

Get-Adobject: Fehler beim Analysieren der Abfrage


Direkt zur Lösung Gelöst von NilsK,
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo, 

Könntet ihr mir zufällig dort weiterhelfen wo der Fehler liegt ?

 

# Import-Module ActiveDirectory

Import-Module ActiveDirectory

 

# Set the path for the CSV file

$csvFile = "C:\Test\Contacts.csv" 

 

# Get all contact objects from the Active Directory

$contacts = Get-ADObject -Filter {(objectClass -eq "contact") -and (Path "OU=Consulting,OU=Kontakte,DC=cvn,DC=local")} -Properties name,telephoneNumber


 

# Create a new object to store the contacts

$contactList = @()

 

# Loop through the contacts and add them to the contact list

foreach ($contact in $contacts) {

    $contactList += New-Object PSObject -Property @{

        Name = $contact.name

        TelephoneNumber = $contact.telephoneNumber

    }

}

 

# Export the contact list to a CSV file

$contactList | Export-Csv $csvFile -NoTypeInformation

 

Fehlermeldung: 

Get-ADObject : Fehler beim Analysieren der Abfrage: "(objectClass -eq "contact") -and (Path
"OU=Consulting,OU=Kontakte,DC=cvn,DC=local")" Fehlermeldung: "syntax error" an folgender Position: "40".
In Zeile:8 Zeichen:13
+ $contacts = Get-ADObject -Filter {(objectClass -eq "contact") -and (P ...
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ParserError: (:) [Get-ADObject], ADFilterParsingException
    + FullyQualifiedErrorId : ActiveDirectoryCmdlet:Microsoft.ActiveDirectory.Management.ADFilterParsingException,Micr
   osoft.ActiveDirectory.Management.Commands.GetADObject.

 

Danke schonmal für die Hilfe!

 

Geschrieben
Am 2.2.2023 um 12:27 schrieb Sunny61:

Schau dir anstatt Path den Parameter -Searchbase an, damit klappt es.

Ich bekomme nun auf das Angepasste Script  diese Fehlermeldung.

# Import-Module ActiveDirectory

Import-Module ActiveDirectory

 

# Set the path for the CSV file

$csvFile = "C:\Test\Contacts.csv" 

 

# Get all contact objects from the Active Directory

$contacts = Get-ADObject -Filter {(objectClass -eq "contact") -and (-Searchbase "OU=Consulting,OU=Kontakte,DC=cvn,DC=local")} -Properties name,telephoneNumber


 

# Create a new object to store the contacts

$contactList = @()

 

# Loop through the contacts and add them to the contact list

foreach ($contact in $contacts) {

    $contactList += New-Object PSObject -Property @{

        Name = $contact.name

        TelephoneNumber = $contact.telephoneNumber

    }

}

 

# Export the contact list to a CSV file

$contactList | Export-Csv $csvFile -NoTypeInformation

 

Fehlermeldung:

 

Get-ADObject : Fehler beim Analysieren der Abfrage: "(objectClass -eq "contact") -and (-Searchbase
"OU=Consulting,OU=Kontakte,DC=cvn,DC=local")" Fehlermeldung: "syntax error" an folgender Position: "35".
In Zeile:8 Zeichen:13
+ $contacts = Get-ADObject -Filter {(objectClass -eq "contact") -and (- ...
+             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ParserError: (:) [Get-ADObject], ADFilterParsingException
    + FullyQualifiedErrorId : ActiveDirectoryCmdlet:Microsoft.ActiveDirectory.Management.ADFilterParsingException,Micr
   osoft.ActiveDirectory.Management.Commands.GetADObject

Geschrieben
vor 3 Minuten schrieb NilsK:

Moin,

 

Searchbase ist ein eigener Parameter, nicht Teil des Filter-Parameters.

 

Gruß, Nils

 

Moin,

Danke für den Tipp.

Das heißt, wie müsste ich das umschreiben ? damit es funktionieren sollte.

 

LG

Tim

  • Beste Lösung
Geschrieben

Moin,

 

du findest hier die Doku des cmdlets. Sowas erhältst du schnell über Suchmaschinen.

https://learn.microsoft.com/en-us/powershell/module/activedirectory/get-adobject?view=windowsserver2022-ps

 

Ich habe keine AD-Testumgebung im Zugriff, daher kann ich es nicht ausprobieren, aber vom Prinzip her:

Get-ADObject -Filter {(objectClass -eq "contact")} -Searchbase "OU=Consulting,OU=Kontakte,DC=cvn,DC=local" -Properties name,telephoneNumber

 

Gruß, Nils

 

Geschrieben
vor 20 Minuten schrieb NilsK:

Moin,

 

du findest hier die Doku des cmdlets. Sowas erhältst du schnell über Suchmaschinen.

https://learn.microsoft.com/en-us/powershell/module/activedirectory/get-adobject?view=windowsserver2022-ps

 

Ich habe keine AD-Testumgebung im Zugriff, daher kann ich es nicht ausprobieren, aber vom Prinzip her:

Get-ADObject -Filter {(objectClass -eq "contact")} -Searchbase "OU=Consulting,OU=Kontakte,DC=cvn,DC=local" -Properties name,telephoneNumber

 

Gruß, Nils

 

Hallo,

 

Hat direkt Funktioniert, nachdem ich ihre Zeile mit meiner Ausgetauscht habe.

Vielen dank!

 

LG

Tim

Geschrieben
vor 43 Minuten schrieb TGo2023:

wie müsste ich das umschreiben ? damit es funktionieren sollte.

 

Ich empfehle, Dir IMMER die Hilfe für die cmdlets anzuschauen, die Du verwenden möchtest. Die enthalten fast immer Beispiele, die man sehr einfach an eigene Anforderungen anpassen kann.

 

vor 15 Minuten schrieb NilsK:
Get-ADObject -Filter {(objectClass -eq "contact")} -Searchbase "OU=Consulting,OU=Kontakte,DC=cvn,DC=local" -Properties name,telephoneNumber

Auch wenn es meistens funktioniert - der Parameter-Typ für "-Filter" ist ein [STINRG] - kein Script-Block!!  ... und die Property "Name" gehört zum Default-Subset, welches Get-ADObject sowieso automatisch ausgibt. Man braucht sie also nicht explizit mit dem Parameter "-Properties" anfordern.  ;-) 

  • Like 1
  • Danke 1
Geschrieben

Moin,

 

danke, Olaf, für den Hinweis. So weit konnte ich da jetzt nicht prüfend reingehen, da ist es immer gut, wenn man ein technisches Gewissen wie dich neben sich sitzen hat. :lol3:

 

Gruß, Ni"ein Senior Consultant muss nur so ungefähr Ahnung haben"ls

 

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...