这是我的剧本:
function f_Mail($t)
{
$from="***"
$to="***"
$subject="test"
$body = '<font face ="segoe ui,calibri,verdana" size = "-1">' + $body + '</font>'
$body += "<HTML><BODY><Table border=1 cellpadding=1 cellspacing=1 width=70% id=Header>"
$body += "<p><br>Bonjour,<br><br> Vous trouverez ci joint un rapport de sauvegarde des serveurs d'impréssions et
des serveurs *** **** </p>"
$body += "<TR>
<TH><B><U><font color=""#5f9ea0"">Nom</font></U></B></TH>
<TH><B><U><font color=""#5f9ea0"">Date</font></U></B></TH>
<TH><B><U><font color=""#5f9ea0"">Sauvegarde</font></U></B></TH>
</TR>"
Foreach($o in $t)
{
$body +="<TR><TD>$($o.nom )</TD>
<TD>$($o.date)</TD>
<TD>$($o.sauvegarde)</TD></TR>"
}
$body += "</table>"
$body += '<br><br><font face ="segoe ui,calibri,verdana" size = "-1.5"><b>' + "*****<br> Direction des Systèmes
d'Information<br>Service Infrastructures et Exploitation<br> *******" + '</b></font>'
Send-MailMessage -from $from
-to $to
-subject $subject
-body $body -BodyAsHtml
-smtpServer ******
-Encoding UTF8}
$date = get-date -format "yyyy-MM-dd" $rep="c:\test" $files=
Get-ChildItem $rep\* -Include *.zip,*printerExport -Recurse |Select
Name, @{Name="LastWriteTime";
Expression={$_.LastWriteTime.ToString("yyyy-MM-dd")}} $t_obj = @()
$date_formatee_ordi = $date $tt=Get-Date -UFormat %A
if($tt -eq $tt){#check les deux fichier a changer en jeudi apres
foreach($item in $files){
$obj = New-Object PSObject
#$time = $item.LastWriteTime
$obj | add-member -MemberType NoteProperty
-name "nom"
-value $item.Name
$obj | add-member -MemberType NoteProperty
-name "date"
-value $item.LastWriteTime
if( $item.LastWriteTime -eq $date_formatee_ordi)
{
$obj | add-member -MemberType NoteProperty
-name "sauvegarde"
-value $true
}
else
{
$obj | add-member -MemberType NoteProperty
-name "sauvegarde"
-value $false # i ***think it is necessary to c add code but i don't know what
}***
$t_obj += $obj
$obj = $null
}
}
else{#bcdi
$choix="bcdi"
$files= get-childitem C:\test\$choix| Select Name, @{Name="LastWriteTime";
Expression={$_.LastWriteTime.ToString("yyyy-MM-dd")}}
$t_obj = @()
foreach($item in $files)
{
$obj = New-Object PSObject
#$time = $item.LastWriteTime
$obj | add-member -MemberType NoteProperty
-name "nom"
-value $item.Name
$obj | add-member -MemberType NoteProperty
-name "date"
-value $item.LastWriteTime
if( $item.LastWriteTime -eq $date_formatee_ordi)
{
$obj | add-member -MemberType NoteProperty
-name "sauvegarde"
-value $true
}
else
{
$obj | add-member -MemberType NoteProperty
-name "sauvegarde"
-value $false
}
$t_obj += $obj
$obj = $null
}} f_Mail $t_obj
这是它在Outlook上返回的内容:
您能告诉我如何用红色为所有行False
上色吗?
答案 0 :(得分:1)
您需要根据$o.sauvegarde
的值来格式化表格行。
改变这个:
$body += "<TR><TD>$($o.nom )</TD>
<TD>$($o.date)</TD>
<TD>$($o.sauvegarde)</TD></TR>"
这样的事情:
$body += if ($o.sauvegarde) {
'<TR>'
} else {
'<TR style="color: #ff0000;">'
}
$body += "<TD>$($o.nom)</TD><TD>$($o.date)</TD><TD>$($o.sauvegarde)</TD></TR>"