michi-ffm
Goto Top

HTML in Batch und Powershell

Hallo zusammen,

zunächst nochmals vielen Dank für eure Unterstützungen!!!!
Ich bin momentan dabei, mich in Batch und Powershell einzulesen nur leider mache ich viele Fehler...

Habe hier folgenden Skript, der Excel nach Änderungsdatum prüft und mir eine Email sendet!
Ich würde nun gerne mein Skript erweitern und die Emails verschönern!

Möchte gerne Html einbinden, d.h wenn Fehler dann in der Mail die Zeile rot markieren und wenn OK dann grün !
Hierzu habe ich gelesen das ich " -BodyAsHtml" einbinden muss

dieses habe ich wie folgt in der letzten Zeile eingebunden, leider erfolglos:
 -BodyAsHtml -Body "<font size='8' color='red'><b>Test</b>" $report -SmtpServer '%SMTP%' -From '%FROM%'"  


Hier der Code der funktioniert:
@echo off & setlocal
set "SMTP=IP"  
set "SUBJECT=Mini01-04"  
set "FROM=Powershell@%computername%"  
set "TO=........."  

powershell -Executionpolicy ByPass -Command "$report = (gci 'C:\Users\Michael\Desktop\test\*','C:\Users\Michael\Desktop\test\*','C:\Users\Michael\Desktop\test\*','C:\Users\Michael\Desktop\test\*' -Include '1.xls','2.xls','3.xls' | %%{\"Datum fur $($_.Fullname) : $(@{$true='OK';$false='FEHLER'}[$_.LastWriteTime.Date -eq (get-date).Date])\"}) -join [environment]::Newline; Send-MailMessage -To '%TO%' -Subject '%SUBJECT%'  -Body  $report -SmtpServer '%SMTP%' -From '%FROM%'"  


Kann mir ggf. jemand weiterhelfen? Werde weiterhin testen, bis ich die Lösung gefunden haben!
Dieses Projekt ist nur eine einmalige Sache, da ich mit Powershell und Batch nie zu tun haben werden!

VG Mike

Content-Key: 327235

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

Printed on: April 20, 2024 at 06:04 o'clock

Mitglied: 131381
131381 Jan 23, 2017 at 10:59:04 (UTC)
Goto Top
powershell -Executionpolicy ByPass -Command "$report = (gci 'C:\Users\Michael\Desktop\test\*','C:\Users\Michael\Desktop\test\*','C:\Users\Michael\Desktop\test\*','C:\Users\Michael\Desktop\test\*' -Include '1.xls','2.xls','3.xls' | %%{$result = @{$true='OK';$false='FEHLER'}[$_.LastWriteTime.Date -eq (get-date).Date]; \"Datum für $($_.Fullname) : ^<span style=\"color:$(@{'OK'='green';'FEHLER'='red'}[$result])\"^>$result^</span^>\"}) -join [environment]::Newline; Send-MailMessage -To '%TO%' -Subject '%SUBJECT%' -BodyAsHtml -Body $report -SmtpServer '%SMTP%' -From '%FROM%'"  
Member: michi-ffm
michi-ffm Jan 23, 2017 at 11:10:00 (UTC)
Goto Top
Dich möchte ich wirklich nicht auf dem Kecks gehen sorry Du hast mir schon zu oft geholfen Vielen Dank dafür nochmal face-smile

zu deinem Skript:
Leider erhalte ich keine Mail.
Member: H41mSh1C0R
H41mSh1C0R Jan 23, 2017 at 11:18:11 (UTC)
Goto Top
*glaskugel polier*

Hmm bleibt grau, sie will mir einfach nicht verraten was du für eine Fehlermeldung bekommst. =)
Member: michi-ffm
michi-ffm Jan 23, 2017 updated at 11:22:24 (UTC)
Goto Top
Falsches Thema glaube ich face-smile
@H41mSh1C0R
Member: H41mSh1C0R
H41mSh1C0R Jan 23, 2017 at 11:28:39 (UTC)
Goto Top
Wieso? Du schreibst oben das du keine Mail bekommst und weiter??
Soll man jetzt raten woran das liegen mag?

Was bekommst du denn für eine Meldung(ggf. eine Fehlermeldung) wenn du das von MIK ausführst?
Mitglied: 131381
131381 Jan 23, 2017 updated at 11:39:32 (UTC)
Goto Top
Zitat von @michi-ffm:
Leider erhalte ich keine Mail.
Ohhh jaaaaaaa einfach geil face-big-smile. Sei froh das ist ein Privileg!

Leute ich mach heute schon Freitag, und tschüssss ab ins Wochenende
Member: michi-ffm
michi-ffm Jan 23, 2017 updated at 12:13:06 (UTC)
Goto Top
@H41mSh1C0R
Bekomme ja keine Fehlermeldung!
Das ist ja das Problem face-smile

@131381 dir ein starkes erholsame Woche face-smile
Member: michi-ffm
michi-ffm Jan 23, 2017 at 12:45:03 (UTC)
Goto Top
Habe folgende Meldung, sobald ich den Code direkt in Powershell ausführe:
Wie gesagt der Code lasse ich via batch ausführen, deswegen auch keine Meldung!
unbenannt
Mitglied: 131381
131381 Jan 23, 2017 at 16:37:56 (UTC)
Goto Top
Du hast es unvollständig kopiert...läuft doch...
Member: michi-ffm
michi-ffm Jan 24, 2017 at 07:34:27 (UTC)
Goto Top
Bei mir irgendwie nicht, naja egal ich lass es so face-smile

Trotzdem vielen Lieben dank
Mitglied: 131381
131381 Jan 24, 2017 updated at 07:53:49 (UTC)
Goto Top
Du hast auch sicher die Carets ^ vor den < und > drin?

An deiner stelle würde ich das sowieso als reines Powershell-Skript erstellen und nicht so einen MIX aus Batch und PS fabrizieren. Achtung den Code oben kannst du nicht 1 zu 1 in die PS übernehmen, da hier Sonderzeichen für die Verwendung innerhalb einer Batch maskiert wurden!!