Wie man die Ausgabe mit PowerShell in eine Datei exportiert

  1. Einführung in den Out-File Befehl in PowerShell
  2. Verwenden Sie den -append Parameter, um in PowerShell an eine Datei anzuhängen
  3. Ändern Sie die Ausgabedaten in PowerShell
Wie man die Ausgabe mit PowerShell in eine Datei exportiert

Mehrere Skriptsprachen verfügen über Funktionen oder Methoden, mit denen Sie die Daten in eine Datei exportieren können. Sogar in den frühen MS-DOS-Tagen konnte der Legacy-Umleitungsoperator (>) dies bequem tun.

Dieser Artikel behandelt, wie man Ausgabedaten in eine Datei exportiert, Daten zu einer bestehenden Datei hinzufügt und die Ausgabe mit PowerShell manipuliert.

Einführung in den Out-File Befehl in PowerShell

Angenommen, Sie haben ein Skript, das eine Liste aller Windows-Dienste auf Ihrem Computer zurückgibt. Wenn wir Get-Service ausführen, erhalten Sie alle Objekte, die Sie möglicherweise in der Konsole erwarten.

Aber vielleicht möchten wir diese Ausgabe in einer Textdatei speichern. Der Out-File Befehl ist eine großartige Möglichkeit, dies zu tun.

Wir können Out-File verwenden, indem wir so ziemlich alles über den Pipeline-Operator senden. Unten sehen wir, dass das Skript die Ausgabe von Get-Service an das Cmdlet gesendet hat, das eine Textdatei namens Services.txt erstellt hat, die dasselbe Display in der Konsole enthält.

Beispielcode:

Get-Service | Out-File -FilePath C:\PS\Services.txt
Get-Content C:\PS\Services.txt

Ausgabe:

Status   Name               DisplayName

Stopped  AJRouter           AllJoyn Router Service
Stopped  ALG                Application Layer Gateway Service
<SNIP>

Verwenden Sie den -append Parameter, um in PowerShell an eine Datei anzuhängen

Standardmäßig überschreibt der Out-File Befehl alles in der Textdatei, die über den -FilePath Parameter bereitgestellt wird. Wir können dieses Verhalten jedoch mit dem -Append Parameter außer Kraft setzen.

Vielleicht sammeln wir Konsolenausgaben in einer Datei und möchten lieber Text an eine Datei anhängen, anstatt sie zu überschreiben. Der -Append Parameter ist Ihr bester Freund.

Wenn wir den Out-File -Append Parameter nicht verwenden, werden die Inhalte von C:\PS\File.txt überschrieben. Aber sobald wir den -Append Parameter hinzufügen, wird die Ausgabe an das Ende angehängt.

Beispielcode:

'firststring' | Out-File -FilePath C:\PS\File.txt
Get-Content -Path C:\PS\File.txt

'secondstring' | Out-File -FilePath C:\PS\File.txt -Append
Get-Content C:\PS\File.txt

Ausgabe:

firststring
firststring
secondstring

Ändern Sie die Ausgabedaten in PowerShell

Standardmäßig versucht dieses Cmdlet, das zu replizieren, was in der Konsole angezeigt wird, es gibt jedoch einige Möglichkeiten, dies zu manipulieren. Zum Beispiel hat das Cmdlet einen -NoNewLine Parameter, der alle Zeilenumbrüche entfernt.

Beispielcode:

Get-Service | Out-File -FilePath C:\PS\Services.txt -NoNewline
Get-Content C:\PS\Services.txt

Ausgabe:

Status   Name               DisplayName
------   ----               -----------
Stopped  AJRouter           AllJoyn Router Service
Stopped  ALG                Application La

Oder wir können den Text in jeder Zeile bei einer bestimmten Zeichenzahl mit dem -Width Parameter abschneiden.

Beispielcode:

Get-Service | Out-File -FilePath C:\PS\Services.txt -Width 30
Get-Content C:\PS\Services.txt

Ausgabe:

Status   Name               DisplayName
------   -----              -----------
Stopped  AJRouter           Al
Genießen Sie unsere Tutorials? Abonnieren Sie DelftStack auf YouTube, um uns bei der Erstellung weiterer hochwertiger Videoanleitungen zu unterstützen. Abonnieren
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Verwandter Artikel - PowerShell Export