У меня возникли проблемы с тем, как массив теряет форматирование, когда он по электронной почте и смотреть в перспективе 2013PowerShell Emailing Массивы
Отформатированная массив выглядит в PowerShell
vServer State Connection
------- ----- ----------
vServer-LB-1 UP 0
vServer-LB-2 DOWN 0
vServer-LB-3 UP 0
vServer-LB-4 UP 0
vServer-LB-5 UP 0
vServer-LB-6 UP 2
Это как Я отформатировал массив (я пытался отправить неформатированный массив, но он по-прежнему неправильно)
$formatserver = @{Expression={$_.name};Label="vServer";width=48}, `
@{Expression={$_.state};Label="State";width=17}, `
@{Expression={$_.establishedconn};Label="Connection"}
$Array = $server | Format-Table $formatserver
Однако, когда по электронной почте (не совсем так, но это не правильно отформатирован).
VServer Состояние соединения
------- ----- ----------
VServer-LB-1 UP 0
VServer-LB-2 DOWN 0
VServer-LB-3 до 0
VServer-LB-4 UP 0
VServer-LB-5 УП 0
VServer-LB-6 УП 2
Вот код для отправки по электронной почте
$from = 'Reporting <[email protected]>'
$to = '[email protected]'
$subject = 'Report'
$body = $Array | Out-String
$smtpServer = 'mail.me.com'
$msg = New-Object Net.Mail.MailMessage($from, $to, $subject, $body)
#$msg.IsBodyHTML = $true
$smtp = New-Object Net.Mail.SmtpClient($smtpServer)
$smtp.Send($msg)
Пожалуйста, обратите внимание, я перепробовал много комбинаций | out-string
и $msg.IsBodyHTML = $true