Jump to content

PowerShell - Alle Informationen anzeigen


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,

 

ich versuche mich in die Powershell einzuarbeiten und viele wichtige Grundinformationen bleiben mir noch verborgen bzw. unbekannt.

Nehmen wir das Beispiel anhand des Befehls Get-Adobject . Hier setze ich beispielsweise den Befehl "Get-Adobject -filter *" ab und erhalten viele Ergebnisse mit 4 Spalten:

DistinguishedName ; Name ; ObjectClass ; ObjectGUID

Ich weiß aber, durch anderweitiges Suchen, dass beispielsweise auch das Attribut "whenCreated" abgefragt werden kann. Doch hätte ich nicht ein Beispielscript dafür im I-Net gefunden, wüsste ich nicht, wie ich überhaupt in der PS erfahre, dass es ein solches Attribut gibt bzw. welches es denn noch gibt?

Ich weiß , dass es beispielsweise "FT" bzw "FL" gibt, aber das bringt mir hier keine weiteren Informationen.

Geschrieben

Moin,

 

welche Attribute bei einem Userobjekt möglich sind (das sind viele), erfährst du nur über eine Abfrage des Schemas. Das ist allerdings ziemlich aufwändig. Da sind dann auch zahlreiche Attribute dabei, die keinen Wert haben und praktisch nie eingesetzt werden. Normalerweise brauchst du nur die Attribute, die auch einen Wert haben.

 

Viele Cmdlets geben von sich aus nur einen Standardsatz an Attributen zurück. Bei Get-ADObject kannst du über den Schalter -Properties weitere Eigenschaften als kommagetrennte Liste angeben, die du gern zurück hättest. Mit dem * bekommst du alle Attribute zurück, die gesetzt sind und auf die due ausreichende Rechte hast. In dem Fall gibst du zur Anzeige am besten noch fl mit (Format-List).

Get-ADObject -LDAPFilter '(sAMAccountName=EllenB)' -Properties * | fl

Gruß, Nils

Geschrieben (bearbeitet)

Genau...das mit "Properties *" hat mir gefehlt. Danke. Aber wie sieht es generell aus? Ich mein die Option "properties" gibt es ja nicht bei jedem Befehl. Wie sehe ich versteckte Attribute bzw. alle Attribute bei anderen Befehlen?

Ich glaube get-member ist "eine Art" dafür. Bei VMware CMDLets hilft "get-view". Manchmal funktioniert es auch mit "ft" bzw. "fl". Aber eine globale Option gibt es wohl nicht oder?

bearbeitet von Rumak18
Geschrieben

Moin,

 

das hängt vom jeweiligen Cmdlet ab. Wenn es z.B. so implementiert ist, dass es nicht mehr zurückgibt, dann eben nicht. Wenn es stattdessen den Schalter "-verbose" oder "-amfreitagnurfisch" nutzt, dann eben so ...

 

Das ist der Fluch der Erweiterbarkeit. PowerShell ist nur oberflächlich einheitlich.

 

Gruß, Nils

Geschrieben

Hi,

 

get-member ist eigentlich genau das. Damit bekommst du alle Methoden und Properties eines übergebenen Objekts.

 

z.B.

 

Get-Item C:\Windows\explorer.exe | Get-Member

 

Ah, da gibt es z.B. VersionInfo... Interessant, was bringt das wohl?

 

Get-Item C:\Windows\explorer.exe | select -ExpandProperty VersionInfo | select *

 

Hm, dann geht sicher auch sowas...

 

(Get-Item C:\Windows\explorer.exe | select -ExpandProperty VersionInfo).FileVersion

Geschrieben

Moin,

 

get-member ist eigentlich genau das. Damit bekommst du alle Methoden und Properties eines übergebenen Objekts.

 

ja, korrekt, guter Hinweis. Aber: Da sind wir auf einer anderen Ebene, nämlich den Eigenschaften eines Objekts, nicht mehr bei Cmdlets ... ja, die PowerShell wird schnell komplex, wenn man einzusteigen versucht.

 

Gruß, Nils

PS. Nur Mut. Abkupfern und Recherchieren hilft, sich zurechtzufinden.

Geschrieben (bearbeitet)

Naja, und grundsätzlich hilft ja erstmal immer RTFM ;)

 

help Get-Adobject -detailed

 

respektive:

 

man Get-Adobject -det :eek:

 

PS: Ich hab mir help statt get-help angewöhnt, da help (oder "man") seitenweise ausgibt.

bearbeitet von massaraksch
Geschrieben (bearbeitet)

Moin,

 

a.) warum habe ich gewusst, dass das kommt?

b.) typisch PowerShell - tut so, als wäre es einfacher, dabei ist es umständlich

c.) :D

 

Gruß, Nils

... und d.) Autokorrekturen sind doof.

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

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...