我找到了这个脚本,我发现只需将脚本在电子邮件中运行的时间发送给收件人。
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
}
基本上,我所追求的是一次只能在电子邮件中显示数据。
有什么想法吗?
由于
答案 0 :(得分:1)
$a = @()
$systeminfo = get-wmiobject win32_computersystem | select *
foreach ($item in $systeminfo)
{
$a += $item
}
$body = [string]::Join("`n", $a)