将数据转换为表格并在powershell中作为电子邮件发送



我有一个CSV报告,我想发送电子邮件消息在一个漂亮的表。

My CSV file:

Blah1|blah2|blah3|blah4
Abc |def  |ghi  |ijk

我的代码
$file= import-csv c:file.csv | convertto-html
Send-emailmessage -smtpserver “blah” -body $([string]$($file)) -subject “blah”

在我的评论中,这个问题可能是因为你的表的边框样式不可见,这通常是在你的CSS中设置的。

有几点需要注意,没有Send-EmailMessage这样的cmdlet,您可能指的是Send-MailMessage。此外,您应该使用-BodyAsHTML开关,否则邮件将是纯文本(不确定这是否是强制性的)。

如果你想了解更多关于如何使你的桌子更漂亮,我会推荐w3schools网站,这是非常友好的。

最后一点要注意,如果您计划使用斑马条纹表,您应该知道许多邮件客户端都是而不是nth-child(even)兼容,并且作为解决方案,您应该循环偶数或奇数行以替换CSS类的<td>

试一试:

$css = @'
<style>
* {
font-family: Calibri, sans-serif;
padding: 10px;
margin: 0px;
text-align: left;
font-size: 20px;
}
table {
border: 1px solid black;
width: 100%;
border-collapse: collapse;
}
td, th {
border: 1px solid black;
}
</style>
'@
[string]$html = Import-Csv c:file.csv | ConvertTo-Html -PreContent $css
Send-MailMessage -SMTPServer blah -Body $html -Subject blah -BodyAsHTML

相关内容

  • 没有找到相关文章