kratos
Goto Top

Mit PowerShell Script eine CSV Datei auslesen und die E-Mail-Adressen dort anschreiben einzeln

Hallo zusammen,

ich habe folgendes Problem.

Ich möchte eine CSV Datei über PowerShell Script einlesen und die E-Mail-Adressen Einzel anschreiben, mit den entsprechenden Zeilen Inhalt der E-Mail-Adresse.

Beispiel:

CSV-Datei:

Header:
regel1;regel2;regel3;email

Inhalt:
test;test;test2;max@muster.de
test;test;test4;max6@muster.de
test3;test9;test12;max7@muster.de
test88;test21;test29;maxmuster@muster.de

Ergebnis (das Aussehen der E-Mail):

E-Mail:

Hallo, sie benutzen die Regeln: test;test1;test2, mit der E-Mail-Adresse = max@muster.de

VG,

ihr Team

Nächste E-Mail die versendet werden soll und so weiter.

E-Mail:

Hallo, sie benutzen die Regeln: test;test;test4 mit der E-Mail-Adresse = max6@muster.de

VG,

ihr Team

Ich hoffe, ihr könnt mir da helfen, vielen Dank schon mal im Voraus.

LG

Kratos

Content-ID: 6807464853

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

Ausgedruckt am: 24.11.2024 um 22:11 Uhr

Kraemer
Kraemer 17.04.2023 um 13:28:19 Uhr
Goto Top
Moin,

Zitat von @Kratos:

ich habe folgendes Problem.
du hast kein Problem. Das ist schnell mit Google erledigt.

Ich hoffe, ihr könnt mir da helfen, vielen Dank schon mal im Voraus.
klar, kein Problem.

Gruß
Kratos
Kratos 17.04.2023 aktualisiert um 13:46:28 Uhr
Goto Top
Zitat von @Kraemer:

Moin,

Zitat von @Kratos:

ich habe folgendes Problem.
du hast kein Problem. Das ist schnell mit Google erledigt.

Ich hoffe, ihr könnt mir da helfen, vielen Dank schon mal im Voraus.
klar, kein Problem.

Gruß

@Kraemer Was meinst du, wie ich auf diese Seite gestoßen bin!
Kraemer
Kraemer 17.04.2023 um 13:50:03 Uhr
Goto Top
Zitat von @Kratos:

@Kraemer Was meinst du, wie ich auf diese Seite gestoßen bin!

naja: https://administrator.de/user/kratos/
em-pie
em-pie 17.04.2023 aktualisiert um 14:18:30 Uhr
Goto Top
6247018886
6247018886 17.04.2023 aktualisiert um 14:30:51 Uhr
Goto Top
Basic framework ...
$cred = new-object PSCredential('username',(ConvertTo-SecureString 'Password' -AsPlainText -Force))  
foreach($line in Import-CSV "D:\users.csv" -Delimiter ";"){  
    Send-MailMessage `
        -From "user@domain.de" `  
        -to $line.email `
        -Subject "Info" `  
        -Body "Hallo, sie benutzen die Regeln $($line.Regel1,$line.Regel2,$line.Regel3 -join ";")" `  
        -SmtpServer xxx.domain.de `
        -Port 587 `
        -UseSsl `
        -Credential $cred `
}
Rest is up to you ...

Nur noch als wichtige Ergänzung: Send-Mailmessage ist Deprecated und beherrscht keine der neuen Verfahren, und bei SSL nur STARTTLS kein "echtes" SSL auf Port 465. Ich würde dann zu einer Bibliothek wie Mailkit/Mimekit raten.

Cheers briggs
3063370895
Lösung 3063370895 17.04.2023 aktualisiert um 14:26:10 Uhr
Goto Top
import-csv C:\tmp\tmp.csv -Delimiter ";" | Foreach-Object {Send-MailMessage -SmtpServer "deinSMTPServer" -Subject "Regeln" -Body "Hallo, sie benutzen die Regeln: $($_.regel1);$($_.regel2);$($_.regel3), mit der E-Mail-Adresse $($_.email)" -To $_.email}   

Zu langsam face-sad