A simple PowerShell code snippet to send contents of a csv file to an email.
It can be used to send a reminder with the contents type on the csv file.
The code below can also be used to send reminders to customer or promotion emails which only need text files.
The code below can also be used to send reminders to customer or promotion emails which only need text files.
Or got logs on a server or applications, but the code below will need to be modified to follow the format of the logs.
The code below requires PS 5.0.
Tweak the code to suit CSV format; format used below is for demo purposes.
From what I observed PowerShell reads the code from the last column with contents to the first column of the excel sheet.
The code below uses this CSV format.
Highlighted text below is column headers in the CSV file, which is defined as an array on PowerShell script.
Tox | Subjectx | Bodyx |
user1_tech@myemail.com | PC Reminder | Turn off PC @ 5PM |
user2_tech@myemail.com | Server Reminder | Reboot Server @ 12:30am |
From above contents of CSV, PowerShell is able to send out multiple emails and contents base on the data on the CSV.
If the CSV on multiple rows contains different email addresses and contents, PowerShell will loop thru all the rows and send the email one by one.
Quite useful if need to send different notifications to multiple email accounts.
Code below is able to send to multiple email to the email accounts on a CSV file, the PowerShell will just loop through all the "Tox" column which has the list of recipients and the code below will send an email up to the last content of the "Tox" column.
The CSV file should have this formatting:
First row and first row "Tox"
First row and second column "Subjectx"
First row and third column "Bodyx"
Here’s the PowerShell code to send email:
==================================
$Tox = @()
$Subjectx = @()
$Bodyx = @()
$emailaddress = "alertnotification@domain.com"
$password = "PASSWORD-Alert@Server2020" | convertto-securestring -AsPlainText -Force
$credos = new-object -typename System.Management.Automation.PSCredential -argumentlist $emailaddress, $password
$port = "587"
$smtp = "smtp.office365.com"
Import-Csv d:\csv_file\csv_email_reminder.csv |`
ForEach-Object {
$Tox += $_.Tox
$Subjectx += $_."Subjectx"
$Bodyx += $_."Bodyx"
}
#Adjust the loop to the number of rows in CSV file
for($i=0
$i -le 1
$i++){
#Display the email being sent
Write-Host "Customer Tox: " $Tox[$i]
Write-Host "Subjectx: " $Subjectx[$i]
Write-Host "Bodyx: " $Bodyx[$i]
send-mailmessage -Port $port -to $Tox[$i] -from $Tox[$i] -subject $Subjectx[$i] -body $Bodyx[$i] -smtpServer $smtp -UseSsl $True -Credential $credos
}
$Subjectx = @()
$Bodyx = @()
$emailaddress = "alertnotification@domain.com"
$password = "PASSWORD-Alert@Server2020" | convertto-securestring -AsPlainText -Force
$credos = new-object -typename System.Management.Automation.PSCredential -argumentlist $emailaddress, $password
$port = "587"
$smtp = "smtp.office365.com"
Import-Csv d:\csv_file\csv_email_reminder.csv |`
ForEach-Object {
$Tox += $_.Tox
$Subjectx += $_."Subjectx"
$Bodyx += $_."Bodyx"
}
#Adjust the loop to the number of rows in CSV file
for($i=0
$i -le 1
$i++){
#Display the email being sent
Write-Host "Customer Tox: " $Tox[$i]
Write-Host "Subjectx: " $Subjectx[$i]
Write-Host "Bodyx: " $Bodyx[$i]
send-mailmessage -Port $port -to $Tox[$i] -from $Tox[$i] -subject $Subjectx[$i] -body $Bodyx[$i] -smtpServer $smtp -UseSsl $True -Credential $credos
==================================
Cheers..hope it helps.
==================
Free Android Apps:
Click on links below to find out more:
https://play.google.com/store/apps/details?id=soulrefresh.beautiful.prayer
Catholic Rosary Guide for Android:
https://play.google.com/store/apps/details?id=com.myrosaryapp
http://quickbytesstuff.blogspot.sg/2014/09/how-to-recite-rosary.html
Divine Mercy Chaplet Guide (A Powerful prayer):
https://play.google.com/store/apps/details?id=com.dmercyapp
Educational Android App for Kids:
https://play.google.com/store/apps/details?id=com.xmultiplication
https://play.google.com/store/apps/details?id=com.letsmultiply
==================
Free Android Apps:
Click on links below to find out more:
https://play.google.com/store/apps/details?id=soulrefresh.beautiful.prayer
Catholic Rosary Guide for Android:
https://play.google.com/store/apps/details?id=com.myrosaryapp
http://quickbytesstuff.blogspot.sg/2014/09/how-to-recite-rosary.html
Divine Mercy Chaplet Guide (A Powerful prayer):
https://play.google.com/store/apps/details?id=com.dmercyapp
Educational Android App for Kids:
https://play.google.com/store/apps/details?id=com.xmultiplication
https://play.google.com/store/apps/details?id=com.letsmultiply
Comments
Post a Comment