Envoyer un e-mail via Powershell | FAQ TECHNIQUE

Envoyer un e-mail via Powershell |  FAQ TECHNIQUE

Envoyer un e-mail via Powershell est possible depuis très longtemps. Cependant, des outils tiers sont souvent utilisés. L’envoi avec Microsoft Powershell est si simple et rapide à mettre en place.

DQo8cD48YnIvPg0KPHNjcmlwdCBhc3luYyBzcmM9Imh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2pzL2Fkc2J5Z29vZ2xlLmpzIj48L3NjcmlwdD4NCjwhLS0gVEVDSEZBUSAtIEltIEFydGlrZWwgLS0+DQo8aW5zIGNsYXNzPSJhZHNieWdvb2dsZSINCiAgICAgc3R5bGU9ImRpc3BsYXk6YmxvY2siDQogICAgIGRhdGEtYWQtY2xpZW50PSJjYS1wdWItOTI5NDg1MzEyMDc1NDI3OSINCiAgICAgZGF0YS1hZC1zbG90PSI1MDc3NjQ3MTY5Ig0KICAgICBkYXRhLWFkLWZvcm1hdD0iYXV0byINCiAgICAgZGF0YS1mdWxsLXdpZHRoLXJlc3BvbnNpdmU9InRydWUiPjwvaW5zPg0KPHNjcmlwdD4NCiAgICAgKGFkc2J5Z29vZ2xlID0gd2luZG93LmFkc2J5Z29vZ2xlIHx8IFtdKS5wdXNoKHt9KTsNCjwvc2NyaXB0Pjxici8+PC9wPg0K

Envoyer un e-mail avec Powershell

En tant que grand fan des scripts Powershell et des automatisations associées, j’utilise naturellement aussi la fonction d’envoi d’e-mails. Avec cela, je peux m’envoyer les résultats des tâches planifiées, transmettre des informations ou, en général, être informé de l’achèvement des tâches.

Windows Powershell est utilisé aujourd’hui pour ce qui se faisait auparavant à l’aide d’outils tiers encombrants tels que “blat”. Cela fait déjà partie du système d’exploitation sur chaque serveur Windows et ordinateur Windows et peut donc être utilisé sans trop d’effort. Et il peut être régulièrement mis à jour via Windows Update.

L’applet de commande qui peut être utilisée pour envoyer un e-mail via powershell est Envoyer-MailMessage. Les paramètres pour le serveur, le sujet, le corps, etc. doivent alors être donnés à cette commande. Une liste complète des possibilités peut être obtenue en saisissant Get-Help Send-MailMessage (éventuellement avec l’ajout -en ligne) – ou directement ici.

Un simple email avec un sujet et un texte serait alors envoyé comme ceci :

Send-MailMessage -To "[email protected]" -From "[email protected]" -Subject "Das ist der Betreff" -Body "Das ist der Inhalt" -SmtpServer "server.tech-faq.net"

Stocker les paramètres dans des variables

Comme j’utilise souvent la fonction dans des scripts, j’aime stocker les informations sur le serveur SMTP, le sujet, etc. dans des variables. Cela signifie que je n’ai pas besoin de rechercher la commande dans tout le script lorsque j’apporte des modifications, j’ai juste besoin de modifier le contenu de la variable (généralement au début du script). Elle ressemble alors à ceci, par exemple :

$to = "[email protected]"
$from = "[email protected]"
$mailserver = "server.tech-faq.net"
$Betreff = "Das ist der Betreff"
$Body = "Das ist der Inhalt"

# Skriptinhalt
# .
# .
# .

Send-MailMessage -To $to -From $from -Subject $Betreff -Body $body -SmtpServer $mailserver
Envoi d’un e-mail via Powershell
E-mail envoyé avec Powershell
Courrier électronique dans Outlook

Envoyer du texte avec des trémas via un e-mail Powershell

Si les trémas et les caractères spéciaux ne s’affichent pas correctement dans un e-mail envoyé via PowerShell, mais ont été convertis en hiéroglyphes, cela est dû à un mauvais encodage de l’e-mail. Ici alors le paramètre doit Codage être utilisé. Avec le paramètre suivant, les trémas et les caractères spéciaux sont transmis correctement : (ajoutez simplement à la fin)

Send-MailMessage -To ....... -Encoding ([System.Text.Encoding]::UTF8)

Avis de non-responsabilité pour CMDlet Send-MailMessage

Utilisé par défaut Envoyer-MailMessage une connexion non cryptée au serveur de messagerie. Avec le paramètre “-UtiliserSSL‘ le cryptage peut être utilisé. Microsoft a maintenant déclaré le CMDlet obsolète car il ne garantit pas des connexions sécurisées au serveur SMTP. Cependant, il n’existe actuellement aucun remplacement pour le CMDlet dans Windows PowerShell. Il doit donc toujours être utilisé avec précaution.

Intéressant aussi :

Cet article est comme tous les autres sur ce site gratuit pour vous et j’espère avoir pu t’aider. Si vous le souhaitez, vous pouvez accorder une petite attention à ce blog sous la forme d’un petit don (Pay Pal) ou via le Liste de souhaits Amazon envoyer.

Facebook
Twitter
LinkedIn
Pinterest

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.