Skip to content
Natuurondernemer
    Dezember 9, 2020 by admin

    Einführung in die Verwendung von Textdateien mit PowerShell

    Einführung in die Verwendung von Textdateien mit PowerShell
    Dezember 9, 2020 by admin

    Mit PowerShell-Cmdlets lernen Sie die Grundlagen: wie man Text aus Textdateien abruft und wie man Text in Textdateien findet.

    Eine der häufigsten Aufgaben, die ein IT-Profi erledigen muss, ist entweder das Erstellen, Lesen oder Ändern von Textdateien in irgendeiner Weise. Textdateien werden in Tausenden von verschiedenen Formaten dargestellt, von einfachen TXT-Dateien über XML bis hin zu verschiedenen proprietären Formaten. Da Textdateien auf so viele verschiedene Arten strukturiert werden können, haben Anbieter die einfache Textdatei als Mittel zur Definition von Skripts, zum Speichern von Konfigurationswerten und SQL-Abfragen und vieles mehr übernommen. Der einzige strukturelle Unterschied zwischen einer TXT-Datei und einer SQL-Datei ist z. B. nur die Dateierweiterung. Der Inhalt ist einfach nur Text, der auf eine andere, vordefinierte Weise strukturiert ist.

    PowerShell bietet viele verschiedene Möglichkeiten, alle diese Textdateitypen zu verwalten, aber in diesem Artikel werden wir uns an den allgemeinsten Ansatz halten: Wir werden uns auf das Lesen und den unstrukturierten Text konzentrieren. Das bedeutet, keine XML-Dateien, keine SQL-Abfragedateien, nicht einmal PowerShell-Skripts selbst. Wir konzentrieren uns auf zwei Themen:

    1. Wie man Text aus Textdateien abruft.
    2. Wie man Text in Textdateien findet.

    Wie man Text aus Textdateien abruft

    Eine der einfachsten Aufgaben ist das Abrufen des gesamten Textes aus einer vorhandenen Textdatei. Für die meisten Textdateien kann ein PowerShell-Skripter das Cmdlet „Get-Content“ verwenden. Das Cmdlet „Get-Content“ ist ein sehr beliebtes PowerShell-Cmdlet, das den gesamten Text aus einer Textdatei abruft, die durch den Path-Parameter angegeben wird.

    Am einfachsten können Sie den Path-Parameter mit dem Dateipfad zu einer Textdatei als Argument an das Cmdlet „Get-Content“ übergeben. Nehmen wir an, ich habe eine Datei namens MyText.txt. In dieser Textdatei habe ich die drei unten gezeigten Zeilen und ich möchte den Inhalt von MyText.txt mit einem PowerShell-Skript abrufen.

    Dazu kann ich Get-Content mit dem Parameter Path verwenden.

    Sie sehen, dass das Ergebnis der gesamte Inhalt von MyText.txt ist. Was aber, wenn Sie nur eine bestimmte Zeilennummer sehen wollen? Standardmäßig liest Get-Content jede Zeile in einer Textdatei und erstellt als Ausgabe ein Array mit jeder Zeile des Textes als Element in diesem Array. Das bedeutet, dass ich leicht verschiedene Elemente in diesem Array auswählen kann, indem ich die Array-Indexnummer angebe. In diesem Fall ist die Array-Indexnummer gleich der Zeilennummer der Textdatei.

    Im obigen Beispiel zeige ich Ihnen, dass das Ergebnis von Get-Content ein Typ von System.Array ist und dass ich durch die Verwendung von Indexnummern in Klammern auswählen kann, welche Zeilen ich auf meiner Konsole ausgeben möchte. Wenn Sie mit Arrays und deren Nummerierungsschema nicht vertraut sind, sollten Sie wissen, dass das erste Element in einem Array mit einer Null beginnt. Deshalb kann ich mit der Nummer eins die zweite Zeile und mit der Nummer zwei die dritte Zeile auswählen. Das ist wichtig, um sich daran zu erinnern.

    Wie man Text in Textdateien findet

    Wenn Sie herausgefunden haben, wie man den gesamten Text in Textdateien oder bestimmte Zeilennummern findet, ist eine weitere beliebte Aufgabe, bestimmten Text innerhalb der Dateien selbst zu finden. Es gibt verschiedene Möglichkeiten, dies zu tun, aber die einfachste ist die Verwendung des Cmdlets „Where-Object“. Das Cmdlet „Where-Object“ ist ein beliebtes Cmdlet, mit dem Sie verschiedene Informationen aus der Ausgabe anderer Cmdlets „herausfiltern“ können; in diesem Beispiel werden Informationen aus dem Cmdlet „Get-Content“ gefiltert.

    Anhand unserer vorherigen Textdatei als Beispiel möchte ich sehen, ob diese Textdatei die Wörter „Textdatei“ zusammen in ihr enthält. Dazu verwende ich Where-Object.

    Bei der Verwendung von Where-Object muss ich die Variable $_ verwenden. Dies ist eine spezielle Variable in PowerShell, die als Pipeline-Variable bekannt ist. In diesem Beispiel repräsentiert sie jede Zeile der Textdatei, wie sie von Get-Content kommt. Ich verwende dann den like-Operator und verwende Platzhalter, um zu sehen, ob die Zeichenfolge „text file“ in einer der Zeilen der Textdatei vorhanden ist. Es sieht so aus, als ob zwei Zeilen gefunden wurden, die mit der Zeichenfolge übereinstimmen.

    Wenn Sie mehr über das Suchen von Text in Textdateien erfahren möchten, schlage ich vor, dass Sie sich mit den Vergleichsoperatoren von PowerShell beschäftigen. Mit dem Match-Operator zum Beispiel wird Regex verwendet, das viel leistungsfähiger ist als der Like-Operator und mit dem Sie so ziemlich jedes denkbare Muster in einer Textdatei finden können.

    Previous articleNicole Curtis BioNext article Wie viel Geld können Sie mit Ihrem Gaming-PC beim Mining verdienen?

    Schreibe einen Kommentar Antworten abbrechen

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

    Neueste Beiträge

    • Sich selbst (und andere…) in Jahrbüchern online finden
    • Wie man einen Bitcoin-ASIC-Miner einrichtet
    • Chris Martin feiert Geburtstag in Disneyland mit Dakota Johnson
    • Was ist ein Superfund-Standort?
    • Angelköder-Blutwürmer haben Bienenstiche
    • Echolalie: Die Fakten jenseits von „Papageiensprache“, Skripting und Echoing
    • Herr der Fliegen Zitate
    • A Beginner’s Guide to Pegging
    • 42 Healthy Crockpot Soup Recipes
    • 3 überraschende Risiken einer schlechten Körperhaltung

    Archive

    • April 2021
    • März 2021
    • Februar 2021
    • Januar 2021
    • Dezember 2020
    • November 2020
    • Oktober 2020
    • September 2020
    • August 2020
    • Juli 2020
    • Juni 2020
    • Mai 2020
    • April 2020
    • DeutschDeutsch
    • NederlandsNederlands
    • EspañolEspañol
    • FrançaisFrançais
    • PortuguêsPortuguês
    • ItalianoItaliano
    • PolskiPolski

    Meta

    • Anmelden
    • Feed der Einträge
    • Kommentare-Feed
    • WordPress.org
    Posterity WordPress Theme