Powershell电子邮件:如何在电子邮件正文中添加新行?

问题描述:

Powershell非常新。写了powershell脚本,它可以很好地工作,但是当它发送邮件时,它并不会在正文中显示新的行字符。以下是配置:Powershell电子邮件:如何在电子邮件正文中添加新行?

$EmailFrom = "[email protected]" 
$EmailTo = "[email protected]" 
$Subject = "Disk Space Low: $server" 

$Body = "Server Name: $server, <NEED NEW LINE> Drive: C, <NEED NEW LINE> Total Size: $sizeGB, <NEED NEW LINE> Space Left: $freeSpaceGB" 

$SMTPServer = "scan.opinergo.fn" 
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 25) 
#$SMTPClient.Credentials = New-Object System.Net.NetworkCredential("<From mail ID>", "Password"); 
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body) 

在身体我已经用以下代替;搜索周围:

1)%0D%0A - 不工作时用户检查邮件

2)\ n - 已不工作时用户检查邮件

3)< BR> - 不工作时的用户检查电子邮件

任何人都可以请建议还有什么我可以用来获得新的行或在脚本中所需的任何修改?

+0

PowerShell的换行符是'\'N'(反引号-N),你尝试过吗? – TessellatingHeckler

+0

不,还没有在搜索中。谢谢。试。 – fatherazrael

+0

@TessellatingHeckler 谢谢。这是工作 – fatherazrael

(从我的意见)

PowerShell的换行符指标是'N(反引号-N),所以:

$Body = "Server Name: $server, <NEED NEW LINE> Drive: C 

变为:

$Body = "Server Name: $server, `n Drive: C 

PowerShell的换行符指标是` n,并且只能用于双引号。

$Body = "Server Name: $server, <NEED NEW LINE> Drive: C" 

变为:

$Body = "Server Name: $server, `n Drive: C"