1
我試圖創建一個電子郵件報告來顯示失敗/成功的備份作業列表。Powershell:在html報告頂部顯示一次表格標題
這裏是我的腳本:
$servers = @(gc config\dbs.txt)
foreach($server in $servers)
{
$dt = new-object "System.Data.DataTable"
$cn = new-object System.Data.SqlClient.SqlConnection "server=$server;database=msdb;Integrated Security=sspi"
$cn.Open()
$sql = $cn.CreateCommand()
$sql.CommandText = $(get-content config\query.sql)
$rdr = $sql.ExecuteReader()
$dt.Load($rdr)
$cn.Close()
$dt |ft Server,RunStatus,JobName >> $log
$dt | ConvertTo-Html Server,JobName,RunStatus -head $a | ac logs\backups\report.htm
}
Server JobName RunStatus
srv1 job1 success
srv1 job2 success
Server JobName RunStatus
srv2 job1 fail
srv2 job2 success
srv2 job3 success
Server JobName RunStatus
srv3 job1 fail
srv3 job2 success
srv3 job3 success
Server JobName RunStatus
srv4 job1 fail
srv4 job2 success
srv4 job3 success
Server JobName RunStatus
srv5 job1 fail
我多次獲得頭名作爲內容的HTML文件被每一個的foreach枚舉後加入。我可以更改我的腳本,使標題[Server JobName RunStatus]只在頂部顯示一次嗎?
另外我想知道是否有可能在郵件中顯示report.htm作爲內聯內容而不是附件。這可能嗎?
在此先感謝。
steeluser
對於第二個問題... [看這裏](http://poshcode.org/950)!歡呼聲 – 2011-04-13 04:52:24
感謝empo! 這工作..我早些時候試過$ dts + = $ dt的東西,但它失敗了,因爲我仍然在循環本身做ConvertToHtml ..所以我只得到$ dt的最後結果集,它沒有發生在我身上我做錯了什麼..我想長時間的工作會這樣做給你..乾杯:-) – Animesh 2011-04-13 06:16:09
回答我的第二個問題看起來對我來說太複雜了..猜我需要休息一段時間才能通過它..感謝給我一個出發點.. :-)有一個美好的一天。 – Animesh 2011-04-13 06:18:07