Powershell:- Send Email – Sample Script

Background

Yesterday, I had a script that I could not get email notification to go out on.

Rather than installing Blat or other email command line tools, I opted to use PowerShell.

Code

Powershell

Script




Set-StrictMode -Version Latest

$script:ErrorActionPreference = "Stop"

[string] $FORMAT_TIMESTAMP = "dddd yyyy-MMM-dd HH:mm tt";

[string] $FORMAT_FQDN = "{0}@{1}";

[string] $emailAddressFrom = "";

[string] $serverSMTP = "<smtpserver>";

[string] $emailAddressReceipient ="<emailAddressReceipient>";

[string] $emailSubject ="Test Email";

[string] $emailBodyPrefix = "Test Email";

[string] $domainDefault = "self";

[string] $computerFQDN = "";

$tsAsString = Get-Date -Format $FORMAT_TIMESTAMP;

$objWMIComputerSystem = Get-WmiObject -Namespace root\cimv2 -Class Win32_ComputerSystem | Select Name, Domain

$computer = $objWMIComputerSystem.Name;

if ($objWMIComputerSystem.Domain -ne $null ){ `

	$domain = $objWMIComputerSystem.Domain;

}

if ( ($domain -eq "" ) -or ($domain -eq $null )) { `

	$domain = $domainDefault;
}

$computerFQDN = $FORMAT_FQDN -f $computer, $domain

$emailAddressFrom = $computerFQDN;

$emailBody = $emailBodyPrefix + " sent on " + $tsAsString

$emailBody;

Send-MailMessage `
	-SmtpServer $serverSMTP `
	-From $emailAddressFrom `
	-To $emailAddressReceipient `
	-Subject $emailSubject `
	-Body $emailBody  

Output

Output – Image

Output – Text


>powershell -file ./email.send.01.ps1
Test Email sent on Monday 2023-Mar-06 12:00 PM

Source Code

  1. GitLab
    • PowerShell – Email – Send
      Link

 

Referenced Work

  1. Microsoft
    • Powershell
      • Learn > PowerShell > Scripting > Reference > Microsoft.PowerShell.Utility

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s