Filterergebnisse mit Where-Objekten in PowerShell

Filterergebnisse mit Where-Objekten in PowerShell
Mit den Funktionen und CMDlets von PowerShell können Sie mehrere Aufgaben schnell und effektiv ausführen. Das Where-Object-CMDLET von PowerShell filtert den Inhalt, der der in Where-Objekt angegebenen Bedingung entspricht. Die Funktionalität des Where-Object-CMDLet wird durch das Üben der unterstützten Liste der Parameter erweitert. Dieser Artikel konzentriert sich auf eine kurze Demonstration der Filterung des Inhalt.

So filtern Sie Ergebnisse mit dem WO-Objekt

Dieser Abschnitt enthält die Syntax und den Grundfunktionsmechanismus. Das Where-Objekt funktioniert aus Gründen einer der folgenden Syntaxe:

> | Wo-objekt
> Wo -Object -InputObject -Eigentum -Wert

InputObject: Dieser Parameter erhält den Objektnamen, den Sie verwenden möchten (zum Filterergebnis) mit WO-Objekt.

Eigentum: Bezieht sich auf den Namen der Eigenschaft eines Objekts

Die Objekte können mit dem Where-Object-CMDLET geleitet werden und jedes Ergebnis wird basierend auf den folgenden Parametern gefiltert werden.

Wert: Dieser Parameter filtert im Namen der Eigenschaft und für diesen einer der folgenden Parameter von Wert kann ausgeübt werden:

Die Vergleichsbetreiber sind nützlich bei der Verwendung des WHERE -Objekts, und alle diese Operatoren werden verwendet, um den Eigenschaftswert mit dem als angegebenen Wert zu vergleichen. Der Parameter prüft, ob der Eigenschaftswert lautet:

  • EQ: Wie im Befehl angegeben
  • GT: größer als der angegebene/Filterwert
  • NE: anders als der angegebene/Filterwert
  • LT: weniger als der angegebene/Filterwert
  • GE: größer als oder gleich (GE) mit dem angegebenen/Filterwert
  • LE: weniger als oder gleich dem angegebenen/Filterwert
  • Enthält: Dieser Parameter sucht nach der genauen Übereinstimmung des Eigenschaftswerts innerhalb der Sammlung von Objekten.
  • In: Druckt den Inhalt, in dem der angegebene Wert im Eigenschaftswert enthalten ist
  • Wie: Das Wild Card -Charakter wird in einem angegebenen Wert akzeptiert und dieser Parameter stimmt mit dem Eigenwert mit dem angegebenen Wert überein.
  • Passen: Diese Ergebnisse werden gedruckt, wenn der Eigenschaftswert dem angegebenen regulären Ausdruck übereinstimmt

Abgesehen von diesen hat jeder Parameter (außer Vergleichsparametern) seinen gegenseitigen und wird durch die Verwendung von NICHT am Start ausgeübt. Zum Beispiel, Nicht enthält, Nicht in, Nicht wie, usw.

Notiz: Alle Parameter, die durch den hier beschriebenen Wert unterstützt werden. Präfixen jedoch “CBevor jeder Bediener es fälschlichempfindlich macht. Zum Beispiel, Ccontains, Klike, CEQ, Cnotin, usw.

So filtern Sie Ergebnisse mit dem Where-Object-CMDLet in PowerShell

Die Ergebnisse werden unter Verwendung der Parameter gefiltert, die von unterstützt werden, -Wert. Sie finden eine Liste von Beispielen, die produktiv sind, um zu verstehen.

Beispiel 1: Verwenden von Vergleichsoperatoren zum Filterergebnisse

Das Get-Command-Cmdlet von PowerShell druckt die Liste der unterstützten CMDlets, Funktionen und Aliase. In diesem Beispiel wird der Weg verwendet, um das gewünschte Ergebnis mit den Vergleichsbetreibern zu erhalten, die durch das CMDLET des Where-Objekts unterstützt werden.

Im folgenden Befehl filter.

> Get-Command | Wo -Object -Property CommandType -eq alias

Die Menge an Prozessorzeit (in Sekunden), die jeder Prozess für alle Prozessoren verwendet wird. Die folgenden Befehlspraktiken, die mit Get-Process-Objekt nur diejenigen Prozesse erhalten, die CPU (en) mehr als oder gleich 500s haben.

> Get-Process | WO -ABJECT -PROPERTY CPU -GE 500

Man kann mehrere Vergleichsbetreiber verwenden, um das Ergebnis zu filtern, um mehr gefilterte Inhalte zu erhalten. Zum Beispiel übt der unten geschriebene Befehl die “aus.“Lt" Und "LeOperatoren, um den Inhalt zu filtern, in dem die CPU weniger als 100 beträgt oder der Arbeitssatz unter oder gleich 150 ist.

> Get-Process | Wo-objekt ($ _.CPU -LT 100.0) -or ($ _.WorkingSet -le 150.0)

Beispiel 2: Verwenden von Containment- und Matching -Operatoren

Die Containment -Operatoren sind Enthält, IN und ihre Reziprokale. Während die Wie, Passen und ihre Reziprokale werden als passende Operatoren bezeichnet. Dieses Beispiel enthält einige Befehle, die die Eindämmung und Anpassungsbetreiber praktizieren, um den Inhalt mit dem Where-Object-CMDLET zu filtern.

Der folgende Befehl sucht eine Eindämmung des Akrobat -Prozesses in der Prozessname Prozessfeld:

> Get-Process | WO -ABJECT -PROPERTY PROCESNAME -AUTRAUT IN ACROBAT

Es gibt einen passenden Operator mit dem Namen Passen Das filtert das Ergebnis in einem breiteren Aspekt. Zum Beispiel die Enthält Der Bediener ist nur Felder, die eine genaue Übereinstimmung mit dem angegebenen Wert haben. Allerdings die Passen Der Bediener gibt Ihnen die Ergebnisse, bei denen der angegebene Wert im Eigenschaftswert des Objekts enthalten ist. Zum Beispiel liefert der unten angegebene Befehl das Ergebnis, das hat Akrobat (teilweise/vollständig) Als Prozessname in der Spalte Prozessname.

> Get-Process | WO -ABJECT -PROPERTY PROZESSNAME -Match Acrobat

In den oben genannten Beispielen praktizieren die Betreiber in einer von Fall unempfindlichen Umgebung. Wenn die Operatoren mit verwendet werden “CAls Präfix würden sie dann als Fallempfindlichkeit fungieren. Der folgende Befehl bringt Sie zu den Feldern, die mit dem übereinstimmenAkrobatIndem Sie die Fallempfindlichkeit im Fokus halten.

> Get-Process | WO -ABJECT -PROPERTY PROCESNAME -CMATCH ACROBAT

Abschluss

PowerShell Wo-Object CMDLet filtert die Objekte basierend auf einigen in einem Parameter angegebenen Kriterien. Dieser Beitrag beschreibt den Arbeitsfluss und die Implementierung des Where-Object-CMDLET-zu-Filterergebnisses. Sie erhalten eine kurze Einführung und einen Arbeitsfluss des Where-Object-CMDLet. Darüber hinaus haben wir mehrere Beispiele geliefert, die Sie zum Filtern von Ergebnissen unter Verwendung von WO-Objekt beibringen,. Es wird der Schluss gezogen, dass die Funktionalität des Objekts stark von den von ihm unterstützten Parametern abhängt. Mit Hilfe dieses Parameters werden die Ergebnisse basierend auf den Eigenschaftswerten und ihrem Vergleich mit dem angegebenen Wert streng gefiltert.