簡體   English   中英

PowerShell電子郵件-使用HTML正文發送.csv

[英]PowerShell e-mail - sending .csv in body with HTML

我有一個Powershell腳本,該腳本運行mysql查詢,並將輸出導出到.csv文件。

然后導入它,將其發送到$body變量並通過電子郵件發送。

這是代碼

### Script to write body of e-mail to $body variable ###

$body = @"
CHECK 4A - MONTH DATABASE REPORT

Row count should be between 3-4k, but less on a Monday.

"@  + (Import-CSV  C:\Users\*****\Documents\Reports\result4A.csv | Out-String)

我也想在電子郵件中使用一些HTML,只是為了使其更易於閱讀,所以我使用了-BodyAsHtml參數:

### Send e-mail ###

send-mailmessage -from " Daily Check <server@company.com>" -to "Admin <e-mail@company.com>" -BodyAsHtml -subject "Daily Server Checks Report" -body "$body" -priority High -dno onSuccess, onFailure -smtpServer **.*.*.**

問題在於,這意味着.csv文件未正確顯示在電子郵件中,因為電子郵件正文已更改為HTML。 有沒有辦法解決? 如果可能,我想保留導出到.csv的解決方案。

$csvHTML = Import-Csv C:\Users\*****\Documents\Reports\result4A.csv  | ConvertTo-Html

$body = @"
    ....  
"@ + ($csvHTML[5..($csvHTML.length-2)] | Out-String)

這會將CSV文件轉換為HTML 然后,您可以簡單地選擇包含CSV的<table></table>標簽(跳過前5行和后2行)並將其添加到電子郵件正文中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM