Wie man eine neue Zeile zur Befehlsausgabe in PowerShell hinzufügt
-
Verwenden von
`N
zum Hinzufügen einer neuen Zeile zur Befehlsausgabe in PowerShell -
Verwendung des Ausgabe-Feldtrennzeichens
OFS
, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen -
Verwendung von
[Environment]::NewLine
, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen -
Verwendung von
Out-String
, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen - Fazit

PowerShell umfasst eine Reihe von speziellen Zeichenfolgen, die den Ausgabinhalt anpassen können. Die Sequenzen sind allgemein bekannt als escape sequences. Sie beginnen mit dem Backtick-Zeichen `` ` und sind groß- und kleinschreibungssensitiv.
Einige Beispiele für Escape Sequenzen sind `0
, `a
, `b
, `e
, `f`
, `n
, `r
, usw. Escape Sequenzen werden nur interpretiert, wenn sie in doppelte Anführungszeichen " "
eingeschlossen sind.
In diesem Artikel untersuchen wir verschiedene Techniken, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen. Jede Technik bietet einen einzigartigen Ansatz, um das gewünschte Ausgabeformat zu erreichen, und bietet Flexibilität und Kontrolle über das Erscheinungsbild der Ausgaben von PowerShell-Skripten.
Verwenden von `N
zum Hinzufügen einer neuen Zeile zur Befehlsausgabe in PowerShell
Die Escape-Sequenz ``n` wird in vielen Programmiersprachen, einschließlich PowerShell, häufig verwendet, um ein Zeilenumbruchzeichen darzustellen.
Wenn ``n` innerhalb eines Strings begegnet, weist es den Interpreter an, den Cursor an den Anfang der nächsten Zeile zu bewegen, beim Anzeigen des Textes.
In PowerShell wird der Backtick als Escape-Zeichen verwendet, um spezielle Zeichen innerhalb von Strings zu kennzeichnen.
Write-Host "This is line 1`nThis is line 2"
In diesem Beispiel verwenden wir das Cmdlet Write-Host, um zwei Zeilen Text auszugeben. Durch die Verwendung der Escape-Sequenz ``nerstellen wir eine neue Zeile zwischen
“This is line 1”und
“This is line 2”` und erreichen so eine klare Trennung des Inhalts.
Ausgabe:
Sie können mehrere `n
-Zeichen verwenden, um mehrere Zeilen hinzuzufügen.
Write-Host "This is line 1`nThis is line 2`n`n`This is line 3"
Wir beginnen mit der Ausgabe von "This is line 1"
, gefolgt von einem Zeilenumbruchzeichen mit dem Backtick (``n), was PowerShell anweist, zur nächsten Zeile zu springen. Dann geben wir
“This is line 2”` in einer neuen Zeile aus, indem wir erneut das Zeilenumbruchzeichen verwenden.
Danach fügen wir zwei aufeinanderfolgende Zeilenumbruchzeichen (``n) mit Backticks hinzu, wodurch eine leere Zeile zwischen
“This is line 2”und
“This is line 3”entsteht. Schließlich geben wir
“This is line 3”` in einer neuen Zeile aus.
Ausgabe:
Verwendung des Ausgabe-Feldtrennzeichens OFS
, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen
In PowerShell ist der Output Field Separator (OFS
) eine spezielle Variable, die bestimmt, wie Elemente in einem Array getrennt werden, wenn sie in eine Zeichenfolge umgewandelt werden. Standardmäßig trennt PowerShell die Array-Elemente mit einem Leerzeichen.
Sie können jedoch den Wert der OFS
-Variable ändern, um einen anderen Trenner anzugeben, z. B. ein Zeilenumbruchzeichen, das durch die Escape-Sequenz n
dargestellt wird.
Zunächst müssen Sie einen Trenner in der OFS
-Variable definieren.
$OFS = "`n`n"
$color = 'red', 'blue', 'green', 'yellow'
"$($color)"
In diesem Codebeispiel setzen wir zunächst die OFS
-Variable auf zwei ``n, was darauf hinweist, dass ein Zeilenumbruchzeichen verwendet werden sollte, um Elemente in der Ausgabe zu trennen. Dann definieren wir ein Array namens
$color`, das vier Farb-Strings enthält.
Wenn wir die Syntax der String-Interpolation "$($color)"
verwenden, wandelt PowerShell das Array implizit in eine Zeichenfolge um, wobei jedes Element mit dem Wert von OFS
getrennt wird, was bedeutet, dass jede Farbe auf einer doppelten neuen Zeile angezeigt wird.
Ausgabe:
Verwendung von [Environment]::NewLine
, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen
In PowerShell ist die Methode [Environment]::NewLine
eine praktische Möglichkeit, die für die aktuelle Betriebssystemumgebung geeignete Zeichenfolge für das Zeilenumbruchzeichen abzurufen. Diese Methode gibt eine Zeichenfolge zurück, die die Zeilenumbruchsequenz (\n
für Unix-basierte Systeme und \r\n
für Windows-basierte Systeme) enthält.
Durch die Nutzung dieser Methode können Sie sicherstellen, dass Ihr PowerShell-Skript Ausgaben mit den richtigen Zeilenumbruchzeichen erzeugt, was es plattformunabhängig und kompatibel in verschiedenen Umgebungen macht.
$color = 'red', 'blue', 'green', 'yellow'
$new = [Environment]::NewLine
$color | foreach { "$_$new" }
In diesem Codebeispiel definieren wir zunächst ein Array namens $color
, das vier Farb-Strings enthält. Dann verwenden wir [Environment]::NewLine
, um die Zeilenumbruchsequenz abzurufen und sie in der Variablen $new
zu speichern.
Als nächstes leiten wir das Array $color
an Sort-Object
weiter, um die Farben alphabetisch zu sortieren. Schließlich durchlaufen wir jede sortierte Farbe mit foreach
, wobei wir jede Farbe mit dem in $new
gespeicherten Zeilenumbruchzeichen verketten, was zu einer sortierten Ausgabe mit jeder Farbe in einer neuen Zeile führt.
Ausgabe:
Verwendung von Out-String
, um eine neue Zeile zur Befehlsausgabe in PowerShell hinzuzufügen
In PowerShell konvertiert das Cmdlet Out-String
die Eingabeobjekte in eine einzige Zeichenfolge, was nützlich sein kann, um die Befehlsausgabe zu formatieren. Standardmäßig fügt Out-String
jedem Objekt ein Zeilenumbruchzeichen (``n`) hinzu, sodass Sie problemlos neue Zeilen zur Befehlsausgabe hinzufügen können.
Diese Methode ist besonders hilfreich, wenn Sie sicherstellen möchten, dass jedes Element in der Ausgabe in einer eigenen Zeile angezeigt wird, um die Lesbarkeit und Organisation zu verbessern.
$color = 'red', 'blue', 'green', 'yellow'
$color | Out-String
In diesem Codeausschnitt definieren wir zunächst ein Array namens $color
, das vier Farb-Strings enthält. Dann verwenden wir die Methode [Environment]::NewLine
, um die geeignete Zeilenumbruchsequenz für die aktuelle Umgebung abzurufen und speichern sie in der Variablen $new
.
Als nächstes durchlaufen wir jedes Element im Array $color
mit der foreach
-Schleife. Innerhalb der Schleife verketten wir jede Farbzeichenfolge mit dem in $new
gespeicherten Zeilenumbruchzeichen, sodass jede Farbe in der Befehlsausgabe in einer neuen Zeile angezeigt wird.
Ausgabe:
Fazit
PowerShell bietet mehrere effektive Methoden, um eine neue Zeile zur Befehlsausgabe hinzuzufügen, was die Lesbarkeit und Organisation verbessert. Ob durch die Verwendung von Escape-Sequenzen wie ``n, die Nutzung der Methode
[Environment]::NewLinefür plattformunabhängige Zeilenumbruchzeichen oder die Anpassung der
OFS`-Variablen zur Formatierung der Array-Ausgabe, PowerShell bietet vielseitige Lösungen, um verschiedene Skripting-Bedürfnisse zu erfüllen.
Durch das Verständnis und die Implementierung dieser Techniken können PowerShell-Skript-Autoren ansprechendere und informativere Ausgaben erstellen, was die Benutzererfahrung und die Effizienz ihrer Skripte insgesamt verbessert.