bugger
Goto Top

Powershell E-Mail Versand mit farbigem HTML aus txt Datei

Hallo,

ich habe folgenden Code:

$pw = Get-Content .\MailPW.txt | ConvertTo-SecureString
$cred = New-Object System.Management.Automation.PSCredential "MailUser", $pw  

$Logfile = "C:\Logs\Log.txt"  

$body = gc $Logfile |%{"$_ <br/>"} | Out-String  

Send-MailMessage -Credential $cred -to "user1@server.de" -from "user2@server.de" -SmtpServer "server.de" -Subject "Logs" -body $body -BodyAsHtml -encoding ([System.Text.Encoding]::UTF8)  

die Log.txt sieht so aus:

Erfolgreich \\Server1\pfad\zur\log\log.txt
Erfolgreich \\Server2\pfad\zur\log\log.txt
Fehlgeschlagen \\Server3\pfad\zur\log\log.txt
Erfolgreich \\Server4\pfad\zur\log\log.txt


Jetzt wäre es schön, wenn in der E-Mail die Worte Erfolgreich grün und Fehlgeschlagen in rot dargestellt würden und im Betreff oder der Mail selber die Anzahl der erfolgreichen und fehlgeschlagen Vorgänge steht. Kann mir da jemand helfen? face-smile

Danke und Gruß
Bugger

Content-Key: 514596

Url: https://administrator.de/contentid/514596

Printed on: April 18, 2024 at 02:04 o'clock

Mitglied: 141815
Solution 141815 Nov 13, 2019 updated at 09:39:19 (UTC)
Goto Top
# ...
$body = (((gc $Logfile) -replace 'Erfolgreich','<span style="color:green">$0</span>') -replace 'Fehlgeschlagen','<span style="color:red">$0</span>') -join '<br />'  
# ...
Member: Bugger
Bugger Nov 13, 2019 at 09:56:20 (UTC)
Goto Top
Super, vielen Dank. Hast du auch eine Idee bzgl. der numerischen Zusammenfassung?
Mitglied: 141815
Solution 141815 Nov 13, 2019 updated at 10:35:05 (UTC)
Goto Top
Zitat von @Bugger:

Super, vielen Dank. Hast du auch eine Idee bzgl. der numerischen Zusammenfassung?
Klar mach ein Regex Match auf den Inhalt des Logs und zähle die Anzahl von Erfolgreich und Fehlgeschlagen
$logdata = gc $logfile -raw
[regex]::matches($logdata,'(?i)Erfolgreich').Count  
[regex]::matches($logdata,'(?i)Fehlgeschlagen').Count  
Member: Bugger
Bugger Nov 13, 2019 at 10:59:47 (UTC)
Goto Top
Funktioniert wunderbar, vielen lieben Dank face-smile