Verwenden von PowerShell zum Lesen von Textdateien und zum Ersetzen von Text

Verwenden Von Powershell Zum Lesen Von Textdateien Und Zum Ersetzen Von Text



PowerShell ist ein Tool, das für die Ausführung aller Verwaltungs- und Automatisierungsaufgaben verantwortlich ist. Es ist in der Lage, alle Datei-Explorer-Operationen wie das Kopieren, Umbenennen, Verschieben oder Löschen von Dateien auszuführen. Genauer gesagt verfügt PowerShell über mehrere Cmdlets, die Textdateien lesen und auch den Text in diesen Dateien ersetzen können. Allerdings ist die „ Get-Content “ Cmdlet wird verwendet, um Dateien mit dem „ -ersetzen ”-Parameter, um den Text zu ersetzen.

In diesem Blog werden Methoden zur Behebung der erwähnten Abfrage erörtert.

Wie liest man Textdateien und ersetzt Text mit PowerShell?

Nun werden wir die beiden Verfahren zum Lesen von Textdateien und zum Ersetzen von Text separat und in Kombination besprechen.







Methode 1: Lesen Sie Textdateien mit dem PowerShell-Befehl „Get-Content“.

Der ' Get-Content ” Cmdlet wird in PowerShell verwendet, um Textdateien zu lesen. Dieses Cmdlet zeigt Textdateidaten in der PowerShell-Konsole an.



Beispiel 1: Lesen einer einzelnen Textdatei

Dieses Beispiel zeigt, wie man Textdateien mit dem „ Get-Content 'Cmdlet. Aber erstellen wir zuerst eine Textdatei mit dem „ Out-Datei 'Cmdlet.



'Das ist ein Text' | Aus -Datei C:\Doc\Datei.txt

Nach obigem Code:





  • Fügen Sie zuerst die Zeichenfolge innerhalb des invertierten Befehls hinzu.
  • Fügen Sie danach eine Pipeline hinzu „ | ” um das Ergebnis des vorherigen Befehls auf den nächsten Befehl zu übertragen.
  • Verwenden Sie dann das „ Out-Datei ” Cmdlet zusammen mit dem Dateipfad, um die Ausgabe in eine Textdatei zu exportieren:

Lassen Sie uns den Inhalt der exportierten Textdatei mit dem „ Get-Content ” Cmdlet mit dem Dateipfad:



Get-Content C:\Doc\Datei.txt

Eine einzelne Textdatei wurde erfolgreich gelesen.

Beispiel 2: Alle Textdateien in einem angegebenen Verzeichnis lesen

Diese Demonstration hilft, alle im jeweiligen Verzeichnis verfügbaren Textdateien zu lesen:

Get-Content C:\Doc\ * .txt

Fügen Sie zuerst das „ Get-Content ” Cmdlet zusammen mit der Ordneradresse und fügen Sie den Platzhalter hinzu “ * ' zusammen mit ' .txt ”-Erweiterung, um alle Textdateien im jeweiligen Ordner zu lesen:

Alle Textdateien wurden erfolgreich in einem Verzeichnis gelesen.

Methode 2: Ersetzen Sie Text mit dem PowerShell-Parameter „-replace“.

Der ' -ersetzen ”-Parameter wird verwendet, um Text innerhalb einer Zeichenfolge zu ersetzen. Es dauert zwei Wortinstanzen, die durch ein Komma getrennt sind. Diese Option funktioniert so, dass das erste Wort gesucht und durch das zweite Wort ersetzt wird.

Beispiel 1: Ersetzen Sie Text innerhalb einer Zeichenfolge

Ersetzen Sie nun die Textinstanzen innerhalb einer String-zugewiesenen Variablen:

$str = 'Hallo Erde'

$str -ersetzen 'Erde' , 'Mars'

Nach obigem Code:

  • Fügen Sie zuerst eine Variable hinzu und weisen Sie ihr eine Textzeichenfolge zu.
  • Geben Sie danach in der nächsten Zeile die Variable und das „ -ersetzen ”-Operator zusammen mit den beiden durch Kommas getrennten Wörtern.
  • Das erste Wort wird innerhalb einer Zeichenfolge gesucht und durch das zweite ersetzt:

Es lässt sich beobachten, dass „ Erde “ wurde ersetzt durch „ Mars “.

Beispiel 2: Alle Textinstanzen in einer Datei ersetzen

Dieses Beispiel zeigt, wie alle Textinstanzen in der angegebenen Textdatei ersetzt werden:

( Get-Content C:\Doc\Datei.txt ) -Ersetzen 'Katze' , 'Hund' | Set-Inhalt C:\Doc\Datei.txt

Nach obigem Code:

  • Schreiben Sie zuerst „ Get-Content ” Cmdlet zusammen mit der Dateiadresse in kleinen Klammern.
  • Fügen Sie danach das „ -ersetzen ” Parameter und fügen Sie zwei Wörter in Anführungszeichen, getrennt durch ein Komma, hinzu.
  • Fügen Sie dann eine Pipeline hinzu „ | “ und verwenden Sie die „ Set-Inhalt “ neben dem Zieldateipfad:

Lassen Sie uns den ersetzten Text überprüfen, indem Sie den folgenden Befehl ausführen:

Get-Content C:\Doc\Datei.txt

Es kann beobachtet werden, dass die verschiedenen Textinstanzen innerhalb einer Datei erfolgreich ersetzt wurden.

Abschluss

PowerShell verwendet die „ Get-Content ” Cmdlet zusammen mit dem Dateipfad zum Lesen von Textdateien. Um Text zu ersetzen, fügen Sie zuerst die Zeichenfolge oder den Dateipfad mit „Get-Content“ hinzu und fügen Sie dann das „ -ersetzen ”-Parameter neben zwei Wörtern, die durch ein Komma getrennt sind. Dieser Beitrag hat eine detaillierte Anleitung zum separaten oder gleichzeitigen Lesen und Ersetzen von Text in PowerShell ausgearbeitet.