Articles

FAQ: Wie kann ich PowerShell verwenden, um meine Textdaten zu sehen?

Laut Wikipedia ist Windows PowerShell das Task-Automatisierungs-Framework von Microsoft, das aus einer Befehlszeilen-Shell und einer zugehörigen Skriptsprache besteht, die auf dem.NET Framework aufbaut und in dieses integriert ist. PowerShell kann nützlich sein, wenn Sie ein paar Zeilen einer sehr großen Textdatei sehen möchten. Um auf PowerShell zuzugreifen, können Sie auf Start, Zubehör, Windows PowerShell klicken. Dadurch wird ein DOS-ähnliches Befehlsfenster geöffnet. Wie unter Unix und DOS können Sie Befehle über die Eingabeaufforderung eingeben. Wenn Sie die PowerShell nicht auf Ihrem Computer installiert haben, können Sie sie von dieserMicrosoft-Website herunterladen.

Die Befehle in der PowerShell heißen „Cmdlets“ (sprich: „command-lets“, kleine Befehle), und es wird zwischen Groß- und Kleinschreibung unterschieden. Eine Auflistung der verfügbaren Befehle finden Sie hier . Wir werden ein paar Cmdlets veranschaulichen, die nützlich sein können, wenn Sie einen Teil des Inhalts einer großen Textdatei anzeigen möchten. Die Zeilen, die mit einem Pfundzeichen (#) beginnen, sind Kommentare.

Um Hilfe zu erhalten, können Sie die folgenden Cmdlets eingeben.

# getting help# http://technet.microsoft.com/en-us/library/dd347616.aspxget-help Get-Content -examplesman gc

Bild PS1

Wir beginnen mit dem bekannten „Hello, World!“, um zu zeigen, wie Variablen erstellt werden können, und dann mit „pwd“ und „dir“, um Informationen über Verzeichnisse zu erhalten.

# hello world!$hi="Hello, World!"$hiImage PS4Image PS4pwddir
# counting the number of files in a folderget-childitem D:dataget-childitem D:data -name(get-childitem D:data).Count 

Bild PS3

Um das Skript (oder die Reihe von Cmdlets, die Sie eingeben) aufzuzeichnen, können Sie die folgenden Cmdlets verwenden.

start-transcript "D:datatranscript.txt"#things in between will be recordedstop-transcript

Das Cmdlet „Get-Content“ ist sehr nützlich für den Zugriff auf Textdateien. Im ersten Beispiel greifen wir auf die ersten 7 Zeilen der Textdatei zu, die wir „large.txt“ nennen. Als Nächstes greifen wir auf die letzten 2 Zeilen zu, und dann erhalten wir die Gesamtanzahl der Zeilen. Beachten Sie, dass das Cmdlet „Get-Content“ zu „gc“ abgekürzt werden kann.

# headGet-Content D:datalarge.txt -totalcount 7gc D:datalarge.txt -totalcount 7gc D:datalarge.txt | select-object -first 7# tailgc D:datalarge.txt | select-object -last 2# total number of rowsGet-Content D:datalarge.txt | Measure-Objectgc D:datalarge.txt | Measure-Object
Image PS6Image PS6

Sie können auf eine bestimmte Spalte zugreifen, und Sie können Datums- und Zeitinformationen erhalten.

# get a specific column# http://stackoverflow.com/questions/2503010/extracting-columns-from-text-file-using-powershellgc D:datalarge.txt | Foreach {($_ -split 's+', 8)}gc D:datalarge.txt | Foreach {"$(($_ -split 's+', 8))"}gc D:datalarge.txt | Foreach {"$(($_ -split 's+', 8))"} > col12.txt
# date and timeGet-DateGet-Date -displayhint dateGet-Date "7/22/1980Image PS2Image PS2

Nachfolgend ein paar Beispiele für das Suchen, Unterteilen und Anhängen.

# searching and subsettingmore D:datalarge.txtselect-string "seqn" D:datalarge.txt select-string -quiet "seqn" D:datalarge.txtImage PS5Image PS5# appending add-content -value "addthis" simple.txtadd-content -value (get-content D:datalarge.txt) simple.txt

Schreibe einen Kommentar

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