Wenn Sie auf dem Markt für ein PowerShell-Cmdlet sind, das die Ausgabe in einer Textdatei speichern kann, haben Sie Glück. Sie werden lernen, wie Sie das PowerShell-Cmdlet Out-File zusammen mit dem beliebten Parameter Out-File -Append verwenden!

Inhaltsverzeichnis

Wie funktioniert Out-File?

Das PowerShell Out-File Cmdlet ist einfach in der Natur; es ist einziger Zweck ist die empfangene Ausgabe zu speichern und in einer Textdatei zu speichern.,

Die Out-Datei wurde entwickelt, um den Standardoperator für die Ausgabeumleitung zu ersetzen (>). Selbst ab den DOS-Tagen konnten wir die Ausgabe in eine Datei umleiten. Dieses Cmdlet ist die PowerShell-Methode.

Das Cmdlet Out-File wird normalerweise am Ende der PowerShell-Pipeline verwendet. Der einzige Zweck besteht darin, die Rohausgabe ohne Rücksicht direkt an eine Textdatei zu senden. Es gibt minimale Möglichkeiten zu optimieren, wie diese Ausgabe geschrieben wird.,

Ausgabe in eine Datei senden

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

Aber vielleicht möchten Sie diese Ausgabe in einer Textdatei speichern. Das Cmdlet Out-File ist eine großartige Möglichkeit, dies zu tun. Sie können Out-File indem Sie so ziemlich alles über die Pipeline an sie weiterleiten.,

Sie können unten sehen, dass die Ausgabe von Get-Service an das Cmdlet gesendet wurde, das eine Textdatei namens Services erstellt hat.txt, das die genaue Anzeige enthält, die Sie auf der Konsole sehen.

PS> Get-Service | Out-File -FilePath C:\Services.txtPS> Get-Content C:\Services.txtStatus Name DisplayNameStopped AJRouter AllJoyn Router ServiceStopped ALG Application Layer Gateway ServiceStopped AppIDSvc Application IdentityStopped Appinfo Application InformationStopped AppMgmt Application Management<SNIP>

Anhängen an eine Datei

Standardmäßig überschreibt Out-File alles in der Textdatei, die über den Parameter FilePath bereitgestellt wird. Sie können dieses Verhalten jedoch überschreiben, indem Sie den Parameter Append.,

Vielleicht akkumulieren Sie die Konsolenausgabe in einer Datei und möchten Text an eine Datei anhängen, anstatt sie zu überschreiben. Der Parameter Append ist Ihr bester Freund.

Mit demOut-File -Append Parameter können Sie unten sehen, beachten Sie, dass, wenn Sie es nicht verwenden, die C:\File.txt wird überschrieben. Sobald Sie jedoch den Parameter Append, wird die Ausgabe an das Ende angehängt.

Ausgabe ändern

Standardmäßig versucht dieses Cmdlet zu replizieren, was auf der Konsole angezeigt wird, aber es gibt einige Möglichkeiten, es zu manipulieren., Zum Beispiel hat das Cmdlet einenNoNewLine Parameter, der lediglich alle Zeilenumbruchszeichen entfernt.

Oder Sie können den Text in jeder Zeile mit einer bestimmten Zeichenanzahl sowie mit dem Parameter Width abschneiden.

<

In einem realen Szenario funktioniert das Cmdlet Out-File, aber es gibt bessere Möglichkeiten, die Ausgabe in einer Datei zu speichern.

Das Cmdlet Out-File bietet keine wirklichen Optionen zum Bearbeiten der Ausgabe. Es speichert einfach die Ausgabe genau wie in der Konsole gezeigt., Dieses Cmdlet ähnelt einem PowerShell-Transkript, das alles direkt in eine Textdatei schreibt.

DieAdd-Content oder Cmdlets haben immer mehr Flexibilität, aber wenn Sie einen schnellen Weg benötigen, um die PowerShell-Ausgabe in eine Datei zu übertragen, istOut-File der richtige Weg.

Related: Set-Content: Die PowerShell-Methode zum Schreiben in eine Datei