Sök…


Introduktion

En användbar teknik för Exchange Server-administratörer är att kunna skicka e-postmeddelanden via SMTP från PowerShell. Beroende på vilken version av PowerShell som är installerad på din dator eller server finns det flera sätt att skicka e-post via powershell. Det finns ett inbyggt cmdlet-alternativ som är enkelt och lätt att använda. Den använder cmdlet Send-MailMessage .

parametrar

Parameter detaljer
Bilagor <String []> Sökväg och filnamn på filer som ska bifogas meddelandet. Sökvägar och filnamn kan ledas till Send-MailMessage.
Bcc <String []> E-postadresser som får en kopia av ett e-postmeddelande men inte visas som mottagare i meddelandet. Ange namn (valfritt) och e-postadressen (obligatorisk), till exempel Namn nå[email protected] eller nå[email protected].
Kropp <String_> E-postmeddelandets innehåll.
BodyAsHtml Det indikerar att innehållet är i HTML-format.
Cc <String []> E-postadresser som får en kopia av ett e-postmeddelande. Ange namn (valfritt) och e-postadressen (obligatorisk), till exempel Namn nå[email protected] eller nå[email protected].
Credential Anger ett användarkonto som har behörighet att skicka meddelande från angiven e-postadress. Standard är den aktuella användaren. Ange namn som User eller Domain \ User, eller ange ett PSCredential-objekt.
DeliveryNotificationOption Anger alternativ för leveransavisering för e-postmeddelandet. Flera värden kan anges. Leveransmeddelanden skickas i ett meddelande till adress som anges i parametern Till. Godkända värden: Inga, OnSuccess, OnFailure, Delay, Never.
kodning Kodning för kropp och subjekt. Godkända värden: ASCII, UTF8, UTF7, UTF32, Unicode, BigEndianUnicode, Standard, OEM.
Från E-postadresser som e-postmeddelandet skickas från. Ange namn (valfritt) och e-postadressen (kräver), till exempel Namn nå[email protected] eller nå[email protected].
Hamn Alternativ port på SMTP-servern. Standardvärdet är 25. Tillgängligt från Windows PowerShell 3.0.
Prioritet E-postmeddelandets prioritering. Godkända värden: Normal, Hög, Låg.
SMTPServer Namn på SMTP-servern som skickar e-postmeddelandet. Standardvärde är värdet på $ PSEmailServer-variabeln.
Ämne Ämnet för e-postmeddelandet.
Till E-postadresser som e-postmeddelandet skickas till. Ange namn (valfritt) och e-postadressen (obligatorisk), till exempel Namn nå[email protected] eller nå[email protected]
UseSsl Använder SSL-protokollet Secure Sockets Layer för att upprätta en anslutning till fjärrdatorn för att skicka e-post

Enkel skicka e-postmeddelande

Send-MailMessage -From [email protected] -Subject "Email Subject" -To [email protected] -SmtpServer smtp.com

Send-MailMessage med fördefinierade parametrar

$parameters = @{
    From = '[email protected]'
    To = '[email protected]'
    Subject = 'Email Subject'
    Attachments =  @('C:\files\samplefile1.txt','C:\files\samplefile2.txt')
    BCC = '[email protected]'
    Body = 'Email body'
    BodyAsHTML = $False
    CC = '[email protected]'
    Credential = Get-Credential
    DeliveryNotificationOption = 'onSuccess'
    Encoding = 'UTF8'
    Port = '25'
    Priority = 'High'
    SmtpServer = 'smtp.com'
    UseSSL = $True
}

# Notice: Splatting requires @ instead of $ in front of variable name
Send-MailMessage @parameters

SMTPClient - E-post med .txt-fil i kroppsmeddelande

# Define the txt which will be in the email body
$Txt_File = "c:\file.txt"

function Send_mail {
    #Define Email settings
    $EmailFrom = "[email protected]"
    $EmailTo = "[email protected]"
    $Txt_Body = Get-Content $Txt_File -RAW
    $Body = $Body_Custom + $Txt_Body
    $Subject = "Email Subject"
    $SMTPServer = "smtpserver.domain.com"
    $SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 25) 
    $SMTPClient.EnableSsl = $false
    $SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)

}

$Body_Custom = "This is what contain file.txt : "

Send_mail


Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow