Powershell formatierte Ausgabe mit einem Here-String
Hallo,
ich sitze gerade an einem kosmetischen Problem. Ich generiere eine Ausgabe für das Eventlog. Dazu lege ich einen Here-String an, der als Message in Write-Eventlog mitgegeben wird. Das funktioniert soweit auch ganz gut, aber ich habe einige Zeile die keinen Sinn ergeben, weil die hinterlegten Variablen nicht befüllt werden.
Aus diesem Grund habe ich die Frage, ob mir jemand einen Tipp geben kann, wie ich im Here-String mit If-Bedingungen arbeiten kann. Damit könnte ich ganze Blöcke ausblenden, so dass im Eventlog nur die wichtigen Informationen landen.
Gruß
derhoeppi
ich sitze gerade an einem kosmetischen Problem. Ich generiere eine Ausgabe für das Eventlog. Dazu lege ich einen Here-String an, der als Message in Write-Eventlog mitgegeben wird. Das funktioniert soweit auch ganz gut, aber ich habe einige Zeile die keinen Sinn ergeben, weil die hinterlegten Variablen nicht befüllt werden.
Aus diesem Grund habe ich die Frage, ob mir jemand einen Tipp geben kann, wie ich im Here-String mit If-Bedingungen arbeiten kann. Damit könnte ich ganze Blöcke ausblenden, so dass im Eventlog nur die wichtigen Informationen landen.
Gruß
derhoeppi
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 400578
Url: https://administrator.de/forum/powershell-formatierte-ausgabe-mit-einem-here-string-400578.html
Ausgedruckt am: 25.12.2024 um 04:12 Uhr
8 Kommentare
Neuester Kommentar
Wie immer halt...
$var = 'das ist ein Test'
@"
Hallo
derhoeppi
$(if($var -match 'Test'){$var})
"@
Kann man indem man die Zeilenumbrüche in die Varianlen packt und die Variablen hintereinander ohne Zeilenumbruch im Heredoc einfügt, Ich würde nur mit Variablen im Heredoc arbeiten und das mit den vermischten If Abfragen darin vergessen.
Ansonsten den finalen String dynamisch zusammensetzen, je nachdem ob Variable gewünscht oder nicht.
Ansonsten den finalen String dynamisch zusammensetzen, je nachdem ob Variable gewünscht oder nicht.
Machst dir eine Array Variable.
Und dann in den if Statements den Inhalt der Variable der Array-Variablen hinzufügen
Am Ende hast du dann $a in der alles drin steht. Feddich.
Und dann in den if Statements den Inhalt der Variable der Array-Variablen hinzufügen
$a = @()
If ($blablub -eq 'blablub'){
$a += $var
}
Kannst du machen wie du willst. Jedes Hinzufügen zum Array erzeugt eine neue Zeile, wenn du es später als String ausgibst, außer du joinst die Elemente mit anderem Delimiter.
Sowas hier geht auch
Um z.B. mehrere Umbrüche in einen Arrayeintrag zu packen.
Sowas hier geht auch
$a += "`r`n`r`n"
Um z.B. mehrere Umbrüche in einen Arrayeintrag zu packen.