Powershell l更改。|Tee对象-文件路径…到。|Tee对象-文件路径…|Out String@BaconBits谢谢。用你的更正更新了我的答案。我忘了ConvertToHTML输出一个数组,而-Body只接受一个字符串……啊,对了。好发现!你应该把你接受的答案改成这

Powershell l更改。|Tee对象-文件路径…到。|Tee对象-文件路径…|Out String@BaconBits谢谢。用你的更正更新了我的答案。我忘了ConvertToHTML输出一个数组,而-Body只接受一个字符串……啊,对了。好发现!你应该把你接受的答案改成这,powershell,Powershell,l更改。|Tee对象-文件路径…到。|Tee对象-文件路径…|Out String@BaconBits谢谢。用你的更正更新了我的答案。我忘了ConvertToHTML输出一个数组,而-Body只接受一个字符串……啊,对了。好发现!你应该把你接受的答案改成这个。啊,对。好发现!你应该把你接受的答案改成这个。 Send-MailMessage : Cannot validate argument on parameter 'Body'. The argument is null or empty.


l更改
。|Tee对象-文件路径…
。|Tee对象-文件路径…|Out String
@BaconBits谢谢。用你的更正更新了我的答案。我忘了ConvertToHTML输出一个数组,而-Body只接受一个字符串……啊,对了。好发现!你应该把你接受的答案改成这个。啊,对。好发现!你应该把你接受的答案改成这个。
Send-MailMessage : Cannot validate argument on parameter 'Body'. The argument is null or empty. Provide an argument that is not null or empty, and then try the command again.
At line:20 char:134
+ ... edtronic.com -Subject "Folder Delition" -Body $CoryReportHtml -BodyAs ...```
#Time when the email is sent
$emailTime = (Get-Date).ToString("MM/dd/yyyy")

#Locate Folders older than 30 days
$CoryReportHtml += Get-ChildItem "\\Server01\XFER\Cory" -Directory | 
    Sort LastWriteTime -Descending |
    Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} |
    Select-Object Name, LastWriteTime | 
    ConvertTo-Html -Head $Header -PreContent "
        <h2>Folders older than 30 days</h2> 
        <body>
            Folders were removed on - $emailTime
            <br></br>
            Location: \\Server01\XFER\Cory
        <body> 
        <br></br>" |
    Out-File "C:\APPS\Delete Folder - Cory\CoryHtmlReport.html"


Send-MailMessage -SmtpServer mail.company.com -to cubam1@company.com -from cubam1@company.com -Subject "Folder Delition" -Body $CoryReportHtml -BodyAsHtml = $true -Attachments "C:\APPS\Delete Folder - Cory\CoryHtmlReport.html"
#Time when the email is sent
$emailTime = (Get-Date).ToString('MM/dd/yyyy')

#Locate Folders older than 30 days
$CoryReportHtml = Get-ChildItem '\\Server01\XFER\Cory' -Directory |
    Sort-Object LastWriteTime -Descending |
    Where-Object {($_.LastWriteTime -lt (Get-Date).AddDays(-30))} |
    Select-Object Name, LastWriteTime |
    ConvertTo-Html -PreContent @"
        <h2>Folders older than 30 days</h2>
        <div>
            Folders were removed on - $emailTime
            <br></br>
            Location: \\Server01\XFER\Cory
        </div>
        <br></br>
"@ | Tee-Object -FilePath 'C:\APPS\Delete Folder - Cory\CoryHtmlReport.html' | Out-String

$mailParams = @{
    SmtpServer = 'mail.company.com'
    to         = 'cubam1@company.com'
    from       = 'cubam1@company.com'
    Subject    = 'Folder Delition'
    Body       = $CoryReportHtml
    BodyAsHtml = $true
    Attachments = 'C:\APPS\Delete Folder - Cory\CoryHtmlReport.html'
}

Send-MailMessage @mailParams