1

我有这个脚本,我发现它只是将脚本运行的时间通过电子邮件发送给收件人。

function send-email
{

$time = get-date 

$EmailFrom = “from”
$EmailTo = “To”
$Subject = “ADX Has Been Deployed”
$Body = “Script has been used on: ” + $time
$SMTPServer = “smtp.gmail.com”
$SMTPClient = New-Object Net.Mail.SmtpClient($SmtpServer, 587)
$SMTPClient.EnableSsl = $true
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential(“e-mail address”, “password”);
$SMTPClient.Send($EmailFrom, $EmailTo, $Subject, $Body)
}


send-email

这是一种享受,但是当我尝试使用以下代码(主机名、IP 地址等)将一些数据添加到电子邮件正文中时,数据将作为完整的字符串返回。

$a = @()
$systeminfo = get-wmiobject win32_computersystem | select *
foreach ($item in $systeminfo)
{
$a = $item
}

基本上,我所追求的是将数据一次一行地显示在电子邮件中。

有任何想法吗?

谢谢

4

1 回答 1

1
$a = @()
$systeminfo = get-wmiobject win32_computersystem | select *
foreach ($item in $systeminfo)
{
   $a += $item
}
$body = [string]::Join("`n", $a)
于 2012-10-05T11:52:00.373 回答