Powershell: Vollständige Ausgabe Array in Datei, ohne dass Zeilen abgeschnitten werden
Hallo,
ich habe ein Array mit Strings von variabler Länge gefüllt.
Wenn ich nun das Array in eine Datei ausgeben will, so werden die Zeilen ab einer bestimmten Position abgeschnitten.
Füge ich hinter diesen Befehl ein
so sind alle Zeilen vollständig, aber jede 160 Zeichen lang, was die Datei unnötig groß macht.
Könnt Ihr mir helfen:
Wie gebe ich das Array aus, damit alle Zeilen vollständig sind und alle nur so lang, wie nötig?
Gruß
Klaus
ich habe ein Array mit Strings von variabler Länge gefüllt.
Wenn ich nun das Array in eine Datei ausgeben will, so werden die Zeilen ab einer bestimmten Position abgeschnitten.
$Liste>$env:temp\170525_093250_.txt
Füge ich hinter diesen Befehl ein
$Liste | out-file $env:TEMP\170525_092746_.txt -width 160
so sind alle Zeilen vollständig, aber jede 160 Zeichen lang, was die Datei unnötig groß macht.
Könnt Ihr mir helfen:
Wie gebe ich das Array aus, damit alle Zeilen vollständig sind und alle nur so lang, wie nötig?
Gruß
Klaus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 338889
Url: https://administrator.de/forum/powershell-vollstaendige-ausgabe-array-in-datei-ohne-dass-zeilen-abgeschnitten-werden-338889.html
Ausgedruckt am: 23.12.2024 um 08:12 Uhr
4 Kommentare
Neuester Kommentar
Benutze set-content (sc) statt out-file oder redirection:
https://msdn.microsoft.com/en-us/powershell/reference/5.1/microsoft.powe ...
Der Grund: out-file /redirection gibt alles so aus wie es auf der Konsole erscheinen würde, und die Konsole hat per Default eine Längenbeschränkung (kann man zwar ändern ist hier aber unzweckmäßig), deswegen werden die Zeilen gekürzt. Anders bei set-content, da wird das Objekt selbst übermittelt ohne den Umweg über die Konsole.
Gruß
$liste | sc datei.txt
Der Grund: out-file /redirection gibt alles so aus wie es auf der Konsole erscheinen würde, und die Konsole hat per Default eine Längenbeschränkung (kann man zwar ändern ist hier aber unzweckmäßig), deswegen werden die Zeilen gekürzt. Anders bei set-content, da wird das Objekt selbst übermittelt ohne den Umweg über die Konsole.
Gruß
Dann hast du kein reines Array sondern ein Objekt mit Eigenschaften, also musst du das Objekt/Eigenschaft expandieren mit
Format-Table und Format-List geben keine Strings aus sondern ebenfalls Objekte wie du siehst. Willst du diese Objekte als String ausgeben musst du ein
Denke immer daran Powershell arbeitet Objektorientiert .
$liste | select -Expand Fullname
out-string
hinterher in der Pipe platzieren.Denke immer daran Powershell arbeitet Objektorientiert .