Die Auswahl-String wird verwendet, um Text und Muster mit regelmäßigen Ausdrücken für diesen Prozess zu vergleichen. Es implementiert den Suchprozess durch Suchzeile nach Zeile. Wenn es die Übereinstimmung findet, werden die Dateinamen, die Zeilennummer und die Übereinstimmung gedruckt.
In diesem Beitrag werden die Arbeit und Verwendung von Powershells Grep -Äquivalentbefehl ausführlich beschrieben.
So verwenden Sie PowerShell Grep -Äquivalent
Wie wir erfahren haben, dass Grep ein Linux-basierter Befehl ist und unter Linux verwendet wird, um die Textzeichenfolgen in einer Protokolldatei zu finden und auszuwählen. Wie bei Grep wird die Auswahl-String verwendet, um die Textmuster und -dateien mit regelmäßigen Ausdrücken in PowerShell zu finden. Die kommenden Beispiele demonstrieren besser das Grep -Äquivalent in PowerShell.
Beispiel 1: So finden Sie die angegebenen Dienste in PowerShell?
Das Get-Service-CMDLet druckt alle Dienste (entweder ausgeführt oder gestoppt) auf dem System aus. Der folgende Code verwendet die “Get-Service" Und "Auswahl”CMDLets, um nur die Liste der gestoppten Dienste zu erhalten.
Die String wird verwendet, um jedes Parameterobjekt in eine Zeichenfolge umzuwandeln, anstatt alle Objekte in eine einzelne Datei zu verkettet.
> Get-Service | Out -String -stream | Select-String "Stopped"
Die Ausgabe zeigt, dass nur die gestoppten Dienste auf der Konsole angezeigt werden. Der obige Befehl erhält alle Prozesse und nur die Prozesse, die derzeit gestoppt werden.
Beispiel 2: So finden Sie das ausgewählte Wort in einem Verzeichnis mit PowerShell?
Das Select-String-CMDLet kann verwendet werden, um ein bestimmtes Wort in einem Verzeichnis zu finden. Dazu geben wir zunächst den Pfad des Ordners und erstellen dann die Select-String-Bedingung nach der Pipeline. Der Pipeline -Operator (|) wird verwendet, um die Eingabe (die die Ausgabe des vorherigen Befehls) zum nächsten Befehl bereitzustellen.
Der folgende Befehl sucht das Muster “Power Shell”In den Dateien der"C: \ Test" Verzeichnis:
> Get -Childitem -Path C: \ Test | SELECT -STRING -PATTERN 'PowerShell'
Die Ausgabe zeigt, dass sich zwei Dateien in der “befindenC: \ Test”Verzeichnis, das das enthält“Power Shell" Stichwort.
Beispiel 3: So finden Sie die Zeichenfolgen im Sub -Verzeichnis mit PowerShell?
Der "-Wiederholen„Flag. Der folgende Befehl überprüft die “Power Shell"Schlüsselwort im"C: \ test \" Verzeichnis. Wir haben das benutzt-FilterParameter, um die Operation nur auf Dateien mit der "durchzuführen".txt" Verlängerung.
> Get -childitem "C: \ test" -Filter *.txt -Recurse | Select-String "PowerShell"
Die Ausgabe beschreibt das drei “.TXT -Dateien enthalten die “Power Shell" Stichwort.
Beispiel 4: So finden Sie eine Zeichenfolge mit zusätzlichen Informationen in PowerShell?
Das Select-String-CMDLet kann verwendet werden, um die zusätzlichen Informationen des durchsuchten Schlüsselworts abzurufen. Zum Beispiel nutzt der folgende Befehl das “Auswahl”Cmdlet, um das zu überprüfen“Power Shell"Schlüsselwort in den Textdateien in"C: \ test \”. Der "WählenDas Schlüsselwort wird verwendet, um die Informationen der Dateien auszuwählen, die die "enthalten"Power Shell" Stichwort.
> Get -childitem "C: \ test" -Filter *.txt -Recurse | Select-String "PowerShell" | Wählen Sie den Dateinamen, Leinenumme, Zeile, Pfad | Format-Tabelle
Es kann aus der Ausgabe beobachtet werden, die “Dateinamen","Zeilennummer","Linie", Und "Weg”Der Dateien werden gedruckt.
Bitte schön! Sie haben die Grundlagen und die fortgeschrittene Stufe des Arbeiten/Gebrauchs des PowerShell Grep -Äquivalent gelernt.
Abschluss
Der Auswahl CMDLet ist das Grep -Äquivalent in PowerShell. Der Grep ist der Befehl Linux und Unix-ähnlicher, der verwendet wird, um die regulären Ausdrücke zu finden. Dieser Beitrag definiert und erklärt den Befehl PowerShell Grep -Äquivalent. Der Auswahl CMDLET kann verwendet werden, um die Dateien zu erhalten, die ein bestimmtes Muster enthalten. Es kann auch verwendet werden, um zusätzliche Informationen zu den Dateien mit einer bestimmten Zeichenfolge oder einem bestimmten Text zu erhalten.