Dieser Beitrag zielt darauf ab, die primäre und fortgeschrittene Verwendung des PowerShell-Select-String-CMDLet zu untersuchen.
So verwenden Sie PowerShell Select-String-CMDLet
In PowerShell kann das Select-String-CMDLet verwendet werden, um nach einem einzelnen Muster oder mehreren Mustern in der Datei oder String zu suchen. Die folgende Syntax wird verwendet, um das Select-String-CMDLET zu verweisen:
Auswahl
Die folgenden Parameter können mit dem Select-String-CMDLet verwendet werden:
Beispiel 1: Um das spezifische Muster (Text) in einer Datei auszuwählen
Der Beispielcode ist wie folgt, um das Muster auszuwählen (i.e., Text/Zeichenfolge) in der “Sample100.CSV" Datei. Erstens der absolute Weg des "Sample100.CSV”Wird nach dem" gegeben "-WegParameter. Danach das Muster “Markieren"Wird unter Verwendung des Parameters eingestellt"-Muster”:
SELECT -STRING -PATH "C: \ Benutzer \ PowerShell \ Dokumente \ Sample \ Sample100.CSV "-Pattern" Mark "
Das Muster war "Markieren"Und es wird beobachtet, dass die Select-String die Linie (zusammen mit der Zeilennummer), die die" enthält "gedruckt hatMarkieren" drin.
Beispiel 2: Auswählen der Mehrere Muster (Text) in einer Datei
Sie können mehrere Muster in der Datei auswählen oder finden. Dazu wird der zu suchen, der gesucht werden soll, nach dem „“-MusterParameter. Der folgende Befehl sucht nach dem “Markieren" Und "Peter"Schlüsselwörter im"Probe.CSV" Datei:
SELECT -STRING -PATH "C: \ Benutzer \ PowerShell \ Dokumente \ Sample \ Sample100.CSV "-Pattern" Mark "," Peter "
Wie Sie sehen können, werden diese Zeilen gedruckt, die entweder Mark oder Peter enthalten.
Beispiel 3: Um nur begrenzte Datensätze von bestimmten Mustern (Text) in einer Datei auszuwählen
Das Select-String-CMDLet kann verwendet werden, um nach dem spezifischen Muster in einer Datei zu suchen, aber nur die begrenzte Anzahl von Instanzen würde durchsucht werden. In dem Beispiel für das Verschluss, das “.CSV"Die Datei wird für das Muster gefiltert"Markieren”. Die Grenze ist jedoch auf 2 Verwendung der "-ErsteParameter:
SELECT -STRING -PATH "C: \ Benutzer \ PowerShell \ Dokumente \ Sample \ Sample100.CSV "-Pattern" marke "| | Select -Object * -First 2
In der obigen Ausgabe die ersten beiden Ereignisse der “MarkierenSchlüsselwort werden am PowerShell -Terminal angezeigt.
Beispiel 4: So wählen Sie die Muster in angegebenen Spalten aus
Das Select-String-CMDLet kann mit dem Auswahl-Objekt verwendet werden, um das Muster zu übereinstimmen und bestimmte Eigenschaften der Zeile mit diesen Mustern zurückzugeben. Zu diesem Zweck wird die Musteranpassung im SELECT-String-CMDLet angegeben, und die Filter werden im Auswahl-Objekt angewendet.
In unserem Fall übt der folgende Beispielbefehl die “aus“Auswahl"Cmdlet, um Muster zu entsprechen"Peter" oder "Phil” in einem CSV -Datei. Dieser Befehl aus Select-String wird dann mit dem geleitet Select-Object cmdlet, um das zu bekommen Leinenumberum, Muster, Dateiname, Und Linie Das enthält die Muster Peter oder Phil:
SELECT -STRING -PATH "C: \ Benutzer \ PowerShell \ Dokumente \ Sample \ Sample100.CSV "-Pattern" Peter "," Phil "| Select -Object Leinenumberum, Muster, Dateiname, Zeile
Aus der Ausgabe wird beobachtet.
Beispiel 5: Auswahl der Muster „Fallempfindlicher“ (Text) in einer Datei auszuwählen
Sie können ein Muster mit “übereinstimmen“-FallsensitivParameter, um auch den Brieffall zu berücksichtigen. Der Beispielbefehl sucht nach den Zeilen, die enthalten “PETER”:
SELECT -STRING -PATH "C: \ Benutzer \ PowerShell \ Dokumente \ Sample \ Sample100.CSV "-Pattern" Peter "-CaseSemsitiv
Wie Sie sehen können, werden nur drei Datensätze gedruckt, die das Schlüsselwort Peter enthalten.
Beispiel 6: Um die unerreichten Muster (Text) in einer Datei auszuwählen
Mit Hilfe der “-Nicht übereinstimmenParameter können wir nur die Datensätze auswählen, die nicht mit den spezifischen Schlüsselwörtern übereinstimmen. Im folgenden Beispiel haben wir zwei Muster angegeben ("Markieren" Und "Peter") im Parameter -notmatch:
SELECT -STRING -PATH "C: \ Benutzer \ PowerShell \ Dokumente \ Sample \ Sample100.CSV "-Pattern" Mark "," Peter "-notmatch
Wie in den obigen Datensätzen zu sehen ist, wird der auf der Konsole gedruckte Datensatz nicht enthält "Markieren" noch "Peter”.
Abschluss
In PowerShell wird das PowerShell-Select-String-CMDLet verwendet, um den angegebenen Text/Muster in der Datei zu finden. Die Verwendung des Befehls ausgewählten String kann durch die Verwendung verschiedener Parameter (-notmatch, -caseSemotive) und Eigenschaften (Dateiname, Zeile, Muster) verbessert werden. Darüber hinaus können Sie die Verwendung des Select-String-CMDLET erweitern, indem Sie es mit Select-Object verwenden. Sie haben die Arbeit des Select-String-CMDLET und seiner Anwendungsfälle in verschiedenen Szenarien gelernt.