In Vielen Scripten werden Zeilenumbrüche, Tabs oder Sonderzeichen (über Char) benötigt um gewisse Abläufe zu steuern. Um in Powershell wie in VBS diese darzustellen, gibt es mehrere Möglichkeiten.
VBS |
PowerShell |
Beschreibung |
vbNewLineChr(10), Chr(13) | n[char]10, [Char]13[System.Environment]::NewLine |
Erzeugt einen Zeilenumbruch |
vbCrLf | n[char]10, [Char]13[System.Environment]::NewLine | Erzeugt ebenfalls einen Zeilenumbruch |
vbTab | `t[char]9 | Setzt einen Tab Horizontal |
Es gibt noch einige Funktionen mehr, allerdings sind dies die am häufigsten genutzten (in meinem Fall). Weiter Funktionen werden auf learningpcs – powershell-vbscript-character beschrieben.
Bevorzugt nutze ich die Variante über Char. Ich finde das ist die sauberste Lösung ohne irgendwelche Akzentzeichen, die leicht falsch gesetzt werden könnten. Über die ASCII Tabelle ist es auch möglich alle anderen Zeichen abzubilden.
Codebeispiele
Tab
1 2 3 4 |
$tab = "Das ist ein vbTab in PS3:$([char]9)tada." $tab #Ausgabe #das ist ein vbTab in PS3: tada |
NewLine
1 2 3 4 5 6 7 8 9 10 11 |
#Variante 1 $nl = "Das steht in der ersten Zeile $( [System.Environment]::NewLine )Das steht in der zweiten Zeile" $nl #Das steht in der ersten Zeile #Das steht in der zweiten Zeile # Variante 2 $nl = "Das steht in der ersten Zeile" + [System.Environment]::NewLine + "Das steht in der zweiten Zeile" $nl #Ausgabe #Das steht in der ersten Zeile #Das steht in der zweiten Zeile |
rewe
oder noch einfacher:
„Erste Zeile`nZweiteZeile“
Richtig. Das ist wohl die einfachste Variante. Danke 🙂
Viele Grüße
rewe