Aujourd'hui, je vais vous montrer comment envoyer des e-mails avec pièce jointe depuis Powershell. De nombreuses organisations disposent de serveurs SMTP pour déclencher des e-mails d'un serveur d'application vers des destinataires. Ce que les administrateurs font normalement lorsqu'un utilisateur signale un problème d'e-mails qui ne sont pas livrés à partir d'un serveur.
Ils leur demanderaient très probablement d'essayer le test telnet pour valider le flux de messagerie. Bien sûr, telnet fonctionne pour vérifier les e-mails, mais il ne prend pas en charge les e-mails avec pièce jointe et c'est un long processus à suivre. Par conséquent, je suggérerais d'essayer d'envoyer un e-mail à l'aide du script PowerShell car c'est la méthode la plus simple et la plus efficace à exécuter.
$fromaddress = Ceci est l'adresse e-mail de l'expéditeur
$toaddress = Ceci est l'adresse e-mail du destinataire
$Subject = Objet d'un e-mail
$body = Créer un HTML pour le corps d'un e-mail
$attachment = Ceci est l'emplacement d'un fichier
joint $smtpserver = " NOM DU SERVEUR SMTP ICI"
Voici le script complet sur la façon d'envoyer des e-mails avec une pièce jointe à partir de PowerShell
#####Définir les variables#####
$fromaddress = "admin@techieberry.com"
$toaddress = "user@techieberry.com"
$Subject = "Email Attachment Test"
$body = get-content "C:\users\desktop\content.html"
$attachment = " C:\users\desktop\test123.txt"
$smtpserver = "NOM DU SERVEUR SMTP ICI"
##################################
$message = nouvel-objet System.Net.Mail.MailMessage
$message.From = $fromaddress
$message.To.Add($toaddress)
$message.IsBodyHtml = $True
$message.Subject = $Subject
$attach = nouvel-objet Net.Mail.Attachment($attachment)
$ message.Attachments.Add($attach) $message.body
= $body
$smtp = new-object Net.Mail.SmtpClient($smtpserver)
$smtp.Send($message)
################################################# ##
Comment exécuter le script ?
- Assurez-vous d'avoir installé la dernière version de Windows PowerShell
- Copiez le script
- Collez-le sur un fichier bloc-notes
- Enregistrez-le sous le nom de fichier.ps1
- Accéder à " Windows PowerShell "
- Accédez à l'emplacement du fichier enregistré et exécutez-le.
- Si vous rencontrez une erreur dans les étapes ci-dessus, cliquez avec le bouton droit sur le fichier .ps1, cliquez sur " Modifier " et appuyez sur la touche F5 pour exécuter le script.
La capture d'écran du script est ci-dessous.

Comme vous pouvez le voir, c'est facile à suivre et, plus important encore, les e-mails sont reçus plus rapidement lorsqu'ils sont envoyés depuis le PowerShell.
A lire également : Comment chiffrer efficacement les e-mails Office 365 ?
Vous souhaitez améliorer votre expérience Exchange Online pour une meilleure productivité ? Découvrez les trucs et astuces mentionnés ici .
Maintenant, j'aimerais avoir de vos nouvelles :
Est-ce que j'ai manqué quelque chose? Ou peut-être avez-vous une question sur quelque chose que j'ai couvert.
Quoi qu'il en soit, j'aimerais vous entendre. Alors allez-y et laissez un commentaire ci-dessous.