Condividi tramite


Send-MailMessage

Invia un messaggio di posta elettronica.

Sintassi

Send-MailMessage
    [-To] <string[]>
    [-Subject] <string>
    [[-Body] <string>]
    [[-SmtpServer] <string>]
    -From <string>
    [-Attachments <string[]>]
    [-Bcc <string[]>]
    [-BodyAsHtml]
    [-Encoding <Encoding>]
    [-Cc <string[]>]
    [-DeliveryNotificationOption <DeliveryNotificationOptions>]
    [-Priority <MailPriority>]
    [-Credential <pscredential>]
    [-UseSsl]
    [-Port <int>]
    [<CommonParameters>]

Descrizione

Il Send-MailMessage cmdlet invia un messaggio di posta elettronica da PowerShell.

È necessario specificare un server SMTP (Simple Mail Transfer Protocol) o il Send-MailMessage comando ha esito negativo. Usare il parametro SmtpServer o impostare la $PSEmailServer variabile su un server SMTP valido. Il valore assegnato a $PSEmailServer è l'impostazione SMTP predefinita per PowerShell. Per altre informazioni, vedere about_Preference_Variables.

Esempio

Esempio 1: Inviare un messaggio di posta elettronica da una persona a un'altra persona

In questo esempio viene inviato un messaggio di posta elettronica da una persona a un'altra persona.

I parametri From, To e Subject sono richiesti da Send-MailMessage. In questo esempio viene usata la variabile predefinita $PSEmailServer per il server SMTP, pertanto il parametro SmtpServer non è necessario.

Send-MailMessage -From 'User01 <user01@fabrikam.com>' -To 'User02 <user02@fabrikam.com>' -Subject 'Test mail'

Il Send-MailMessage cmdlet usa il parametro From per specificare il mittente del messaggio. Il parametro To specifica il destinatario del messaggio. Il parametro Subject usa la stringa di testo Test mail come messaggio perché il parametro Corpo facoltativo non è incluso.

Esempio 2: Inviare un allegato

In questo esempio viene inviato un messaggio di posta elettronica con un allegato.

Send-MailMessage -From 'User01 <user01@fabrikam.com>' -To 'User02 <user02@fabrikam.com>', 'User03 <user03@fabrikam.com>' -Subject 'Sending the Attachment' -Body "Forgot to send the attachment. Sending now." -Attachments .\data.csv -Priority High -DeliveryNotificationOption OnSuccess, OnFailure -SmtpServer 'smtp.fabrikam.com'

Il Send-MailMessage cmdlet usa il parametro From per specificare il mittente del messaggio. Il parametro To specifica i destinatari del messaggio. Il parametro Subject descrive il contenuto del messaggio. Il parametro Body è il contenuto del messaggio.

Il parametro Allegati specifica il file nella directory corrente collegata al messaggio di posta elettronica. Il parametro Priority imposta il messaggio su Priorità elevata . Il parametro -DeliveryNotificationOption specifica due valori, OnSuccess e OnFailure. Il mittente riceverà notifiche tramite posta elettronica per confermare l'esito positivo o negativo del recapito del messaggio. Il parametro SmtpServer imposta il server SMTP su smtp.fabrikam.com.

Esempio 3: Inviare un messaggio di posta elettronica a una lista di distribuzione

In questo esempio viene inviato un messaggio di posta elettronica a un elenco di posta elettronica.

Send-MailMessage -From 'User01 <user01@fabrikam.com>' -To 'ITGroup <itdept@fabrikam.com>' -Cc 'User02 <user02@fabrikam.com>' -Bcc 'ITMgr <itmgr@fabrikam.com>' -Subject "Don't forget today's meeting!" -Credential domain01\admin01 -UseSsl

Il Send-MailMessage cmdlet usa il parametro From per specificare il mittente del messaggio. Il parametro To specifica i destinatari del messaggio. Il parametro Cc invia una copia del messaggio al destinatario specificato. Il parametro Bcc invia una copia cieco del messaggio. Una copia cieco è un indirizzo di posta elettronica nascosto dagli altri destinatari. Il parametro Subject è il messaggio perché il parametro Corpo facoltativo non è incluso.

Il parametro Credential specifica le credenziali di un amministratore di dominio per inviare il messaggio. Il parametro UseSsl specifica che Secure Socket Layer (SSL) crea una connessione sicura.

Parametri

-Attachments

Specifica il percorso e i nomi dei file da collegare al messaggio di posta elettronica. È possibile usare questo parametro o eseguire la pipe dei percorsi e dei nomi di file in Send-MailMessage.

Type:String[]
Aliases:PsPath
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Bcc

Specifica gli indirizzi di posta elettronica che ricevono una copia della posta, ma non sono elencati come destinatari del messaggio. Immettere i nomi (facoltativo) e l'indirizzo di posta elettronica, ad esempio Name <someone@fabrikam.com>.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Body

Specifica il contenuto del messaggio di posta elettronica.

Type:String
Position:2
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BodyAsHtml

Specifica che il valore del parametro Body contiene HTML.

Type:SwitchParameter
Aliases:BAH
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Cc

Specifica gli indirizzi di posta elettronica a cui viene inviata una copia di carbonio (CC) del messaggio di posta elettronica. Immettere i nomi (facoltativo) e l'indirizzo di posta elettronica, ad esempio Name <someone@fabrikam.com>.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Specifica un account utente che dispone delle autorizzazioni per eseguire questa azione. Il valore predefinito è l'utente corrente.

Digitare un nome utente, ad esempio User01 o Domain01\User01. In alternativa, immettere un oggetto PSCredential , ad esempio uno dal Get-Credential cmdlet.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DeliveryNotificationOption

Specifica le opzioni di notifica di recapito per il messaggio di posta elettronica. È possibile specificare più valori. None è il valore predefinito. L'alias per questo parametro è DNO.

Le notifiche di recapito vengono inviate all'indirizzo nel parametro From .

I valori accettabili per questo parametro sono i seguenti:

  • Nessuna: nessuna notifica.
  • OnSuccess: notifica se il recapito ha esito positivo.
  • OnFailure: notifica se il recapito ha esito negativo.
  • Ritardo: notifica se il recapito è ritardato.
  • Mai: mai notificare.
Type:DeliveryNotificationOptions
Aliases:DNO
Accepted values:None, OnSuccess, OnFailure, Delay, Never
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Encoding

Specifica il tipo di codifica per il file di destinazione. Il valore predefinito è Default.

I valori accettabili per questo parametro sono i seguenti:

  • ASCII Usa il set di caratteri ASCII (a 7 bit).
  • BigEndianUnicode Usa UTF-16 con l'ordine di byte big-endian.
  • Predefinito Usa la codifica corrispondente alla tabella codici attiva del sistema (in genere ANSI).
  • OEM Usa la codifica corrispondente alla tabella codici OEM corrente del sistema.
  • Unicode Usa UTF-16 con l'ordine di byte little-endian.
  • UTF7 Usa UTF-7.
  • UTF8 Usa UTF-8.
  • UTF32 Usa UTF-32 con l'ordine di byte little-endian.
Type:Encoding
Aliases:BE
Accepted values:ASCII, BigEndianUnicode, Default, OEM, Unicode, UTF7, UTF8, UTF32
Position:Named
Default value:Default
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-From

Il parametro From è obbligatorio. Questo parametro specifica l'indirizzo di posta elettronica del mittente. Immettere un nome (facoltativo) e un indirizzo di posta elettronica, ad esempio Name <someone@fabrikam.com>.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Port

Specifica una porta alternativa sul server SMTP. Il valore predefinito è 25, ovvero la porta SMTP predefinita.

Type:Int32
Position:Named
Default value:25
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Priority

Specifica la priorità del messaggio di posta elettronica. Il valore predefinito è Normal. I valori accettabili per questo parametro sono Normal, High e Low.

Type:MailPriority
Accepted values:Normal, High, Low
Position:Named
Default value:Normal
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SmtpServer

Specifica il nome del server SMTP che invia il messaggio di posta elettronica.

Il valore predefinito è il valore della $PSEmailServer variabile di preferenza. Se la variabile di preferenza non è impostata e questo parametro non viene usato, il Send-MailMessage comando ha esito negativo.

Type:String
Aliases:ComputerName
Position:3
Default value:$PSEmailServer
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Subject

Il parametro Subject è obbligatorio. Questo parametro specifica l'oggetto del messaggio di posta elettronica.

Type:String
Aliases:sub
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-To

Il parametro To è obbligatorio. Questo parametro specifica l'indirizzo di posta elettronica del destinatario. Se sono presenti più destinatari, separare gli indirizzi con una virgola (,). Immettere i nomi (facoltativo) e l'indirizzo di posta elettronica, ad esempio Name <someone@fabrikam.com>.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-UseSsl

Il protocollo Secure Sockets Layer (SSL) viene usato per stabilire una connessione sicura al computer remoto per inviare posta elettronica. Per impostazione predefinita SSL non viene usato.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

String

È possibile inviare il percorso e i nomi di file degli allegati a Send-MailMessage.

Output

None

Questo cmdlet non genera alcun output.