Lesen Sie die Dateizeile nach Zeile in PowerShell

Lesen Sie die Dateizeile nach Zeile in PowerShell
PowerShell ist ein Windows -Dienstprogramm zur Verwaltung und Automatisierung aller Verwaltungsaufgaben in Windows. Es ist auch von Vorteil, wenn es um das Verwalten von Dateien wie das Erstellen von Dateien, das Löschen von Dateien, das Verschieben von Dateien oder das Lesen von Dateien geht. Wenn Sie eine Textdatei haben und Schwierigkeiten haben.

In diesem Beitrag wird eine vollständige Anleitung zur Lösung der angegebenen Abfrage überprüft.

So lesen Sie eine Dateizeile für Zeile in PowerShell?

Die Dateien in PowerShell können mit den angegebenen Methoden gelesen werden:

  • Treffen
  • Regex
  • [System.Io.Datei]

Methode 1: Lesen Sie eine Dateizeile mit der Zeile mit dem CMDLet "get-content"

PowerShell verwendet das “Treffen”CMDLET, um den Inhalt der Datei zu erhalten, z. B. den Inhalt der Textdatei. In diesem Ansatz die “Für jedeDie Schleife wird verwendet, um die Textdatei durchzusetzen und die Dateizeile nach Zeile zu lesen.

Beispiel

In diesem angegebenen Beispielcode verwenden wir die “Treffen”CMDLET mit Hilfe der“für jedeSchleife, um eine Dateizeile für Zeile zu lesen:

$ File = get-content "C: \ Benutzer \ Muhammad Farhan \ Desktop \ New.txt"
foreach ($ line in $ file)

Reportput "$ line"

Hier:

  • Treffen”CMDLET wird verwendet, um die Datei vom angegebenen Speicherort abzurufen/abzurufen.
  • für jede()Die Schleife wird im obigen Code verwendet, um die Dateizeile nach Zeile zu lesen.

Ausgang

Die Ausgabe bestätigt, dass die Datei von der Zeile gelesen wurde.

Methode 2: Lesen einer Dateizeile mit der Zeile mit „[System).Io.Datei] ”Klasse

Eine andere Methode, die als Ersatz für das CMDLET des Get-In-Inscontent verwendet werden kann, ist das .Netzbibliothek "[System.Io.Datei]" Klasse. Es hilft auch dabei, den Inhalt der Datei mit der “zu erhaltenReadlines ()" Methode.

Beispiel

Wir werden jetzt die „verwenden“[System.Io.Datei]" Klasse mit der Kombination der “für jedeSchleife, um die Dateizeile für Zeile zu lesen:

foreach ($ line in [System.Io.Datei] :: Readlines ("C: \ Benutzer \ Muhammad Farhan \ Desktop \ New.txt"))

Reportput $ Line

Hier:

  • [System.Io.Datei]"Klasse verwendet das"Readlines ()Parameter zum Lesen einer Datei.
  • für jedeDie Schleife wird hinzugefügt, um über die Dateienzeile nach Zeile zu iterieren.

Ausgang

Methode 3: Lesen einer Dateizeile mit der Zeile mit der "Regex" -Klasse

Der "Regex"Ist die Kurzform der"Regulären Ausdruck”. Es ist ein Muster, das verwendet wird, um den Text in der entsprechenden Datei abzustimmen. Darüber hinaus kann es auch verwendet werden, um eine Dateizeile nach Zeile zu lesen. Geben Sie dazu den Wert des “an“$ regex”Variable als leere Zeichenfolge und verwenden Sie die“für jede”Schleifen, um die Datei nacheinander zu lesen.

Beispiel

Jetzt werden wir das verwenden “Regex"Mit der Kombination der"Treffen"CMDLET und"für jede()Schleife, um eine Dateizeile für Zeile zu lesen:

$ regex = "
foreach ($ line in get -content -path "c: \ user \ muhammad farhan \ desktop \ new.txt")

if ($ line -match $ regex)

Reportput $ Line

Im obigen Code:

  • $ regexDie Variable enthält eine leere Zeichenfolge als regulärer Ausdruck.
  • Treffen”CMDLET wird verwendet, um die Datei und den Inhalt darin abzurufen.
  • für jede”Wird verwendet, um durch die Linien zu iterieren.

Ausgang

Die Ausgabe überprüft, dass die Datei die Zeile von Zeile gelesen wurde.

Abschluss

Verwenden Sie die Kombination von der “, um die Dateienzeile für Zeile in PowerShell zu lesenTreffen"CMDLET und"für jede”Schleife. Das CMDLET des GET-Ins-Inhalts erhält den Inhalt der Datei, und die Foreach-Schleife wird durch Zeilen iteriert, um die Codezeile für Zeile zu lesen. Darüber hinaus, "Regex" Und "[System.Io.Datei]Methoden können auch für denselben Zweck verwendet werden. Dieser Beitrag hat zahlreiche Ansätze zur Lösung der genannten Abfrage vorgestellt.