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
}

基本的に、私が求めているのは、データを一度に1行ずつ電子メールで表示することです。

何か案は?

ありがとう

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 に答える