marabunta
Goto Top

Powershell Textausgabe Mindestlänge

Hallo,

ich will meine Ausgabe in der Konsole leserlicher gestalten...

Write-Host " $Datei - PV: $ZielProduktversion FV: $ZielFileversion"  

Ausgabe:
asfasdfasdfaegea- PV: 3.0.0.0 FV: 3.0.0.0
geg- PV: 14.30.0.6 FV: 14.30.0.6
herahrhrgafefgagagwgawgewgawgwegwe- PV: 3.0.0.0 FV: 3.0.0.0
agergae- PV: 3.0.0.0 FV: 3.0.0.0

Wie mach lege ich die mindestbreite fest?
Das geht in die richtige Richtung, entweder habe ich es nich hinbekommen oder es ist nur für Zahlen....

http://www.powershellpraxis.de/index.php/grundlagen/formatierung-des-ou ...

Hier wie es aussehen soll, wird nur nicht ganz passend formatiert:
asfasdfasdfaegea                       - PV: 3.0.0.0 FV: 3.0.0.0
geg                                    - PV: 14.30.0.6 FV: 14.30.0.6
herahrhrgafefgagagwgawgewgawgwegwe     - PV: 3.0.0.0 FV: 3.0.0.0
agergae                                - PV: 3.0.0.0 FV: 3.0.0.0

Danke


Update:
Funktioniert - Geht es noch besser?
while(($datei |select -ExpandProperty length) -lt 30)
{
$datei="$datei" +" "  
}

Content-ID: 277383

Url: https://administrator.de/forum/powershell-textausgabe-mindestlaenge-277383.html

Ausgedruckt am: 02.04.2025 um 05:04 Uhr

114757
114757 15.07.2015 aktualisiert um 15:26:40 Uhr
Goto Top
An deinem Beispiel kann ich das nicht erkennen was du willst. Aber eine Default-Konsole hat nur max. 80 Zeichen Breite, das musst du anpassen wenn du längere Zeilen haben willst:
# Powershell Host-Window anpassen auf 200 Zeichen anpassen
$window = (get-host).UI.RawUI
$buffersize = $window.BufferSize
$buffersize.Width = 200
$window.BufferSize = $buffersize

<# Bei Bedarf kann man das Fenster auch größer machen
$size = $window.WindowSize
$size.Width = 200
$size.Height = 40
$window.WindowSize = $size
#>
# -----------------

# Demostring erzeugen 200 mal ein "X" 
$string1 = "X"*200  
# String ausgeben
$string1
read-host
Gruß jodel32
Marabunta
Marabunta 15.07.2015 um 15:45:12 Uhr
Goto Top
hab die sollausgabe verbessert, ich hoffe es wird deutlicher
114757
114757 15.07.2015 aktualisiert um 18:16:47 Uhr
Goto Top
Dann rate ich mal ins Blaue:
$string1 = "DemoLinks1"  
$string2 = "Demo-Gleicher-Abstand1"  
$string3 = "DemoLinks2blabla"  
$string4 = "Demo-Gleicher-Abstand1"  

"{0,-40} - {1}" -f $string1,$string2  
"{0,-40} - {1}" -f $string3,$string4  
Erstellt in der Ausgabe zwei Spalten in denen der Text jeweils Links ausgerichtet ist und die erste Spalte auf max. 40 Zeichen ausgerichtet wird.
Guckst du hier: Example 2: Columns Aligned - Desired Format


Ich würde hier aber eher mit Objekten und bei der Ausgabe mit Format-table arbeiten ...Wieso es sich so schwer machen, wenns doch einfacher geht face-wink