POWERSHELL : Envoi d’e-mail (corps HTML & encodage UTF8) 1

Logo PowerShell

Si vous souhaitez envoyer des e-mails via powershell voici la commande :

 


#Destinataire de l'email
$To = "nom.prenom@domaine.com"

#L’émetteur de l'email
$From  ="monscriptpowershell@mondomaine.com"

#Le Sujet de l'email
$Subject = "Mon script vient de terminer"

#Le serveur SMTP (ex : votre serveur Exchange)
$SmtpServer = "Nom de votre serveur de messagerie ou IP de votre serveur SMTP"

#Le corps de votre message
$body = "Coucou le script est fini"

#Commande d'envoi
Send-MailMessage -to $To -From $From -Subject $Subject -SmtpServer $SmtpServer -BodyAsHtml $body

Notez que cette commande vous permet d’avoir du code HTML dans votre e-mail (grâce à l’option : BodyAsHtml)

 

– Si vous souhaitez la prise en charge des Accents et autres dans votre e-mail vous devez déclarer une nouvelle variable :


#Encodage UTF8
$encodingMail = [System.Text.Encoding]::UTF8

#Destinataire de l'email
$To = "nom.prenom@domaine.com"

#L’émetteur de l'email
$From  = "monscriptpowershell@mondomaine.com"

#Le Sujet de l'email
$Subject = "Mon script vient de terminer"

#Le serveur SMTP (ex : votre serveur Exchange)
$SmtpServer = "Nom de votre serveur de messagerie ou IP de votre serveur SMTP"

#Le corps de votre message
$body = "<center>Coucou le script est fini</center>"

#Commande d'envoi
Send-MailMessage -to $to -From $from -Subject $Subject -SmtpServer $SmtpServer -BodyAsHtml $body -Encoding $encodingMail

 

Petit plus :

Si vous devez envoyer votre e-mail à plusieurs destinataires, il suffira d’utiliser comme variable :


$to = @("nom.prenom@domaine.com","nom2.prenom2@domaine.com","nom1.prenom3@domaine.com")

 

Et voila vous pouvez désormais envoyer de beaux rapports avec des couleurs & des tableaux à vos supérieurs 😉


Laissez un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Commentaire sur “POWERSHELL : Envoi d’e-mail (corps HTML & encodage UTF8)