【发布时间】:2020-07-28 19:06:39
【问题描述】:
我找到了一个脚本来计算文件夹中的文件数(看起来不错),但由于某种原因它不起作用。目标是,如果文件夹中的文件数量超过五个,我会收到有关它的自动通知。 如果有人可以帮助我,我不是很擅长脚本,这是我找到并且不起作用的脚本:
$Output = "c:\Test\*"
If (Get-Content -Path $Output | Where-Object {$_.Count -gt10})
{
$MailArgs = @{
'To' = "my@mail.com"
'From' = "some@mail.com"
'Subject' = "some text"
'Body' = "Number of files"
'SmtpServer' = "smtp"
}
Send-MailMessage @MailArgs
}
【问题讨论】:
-
您应该可以将
(Get-Content -Path $Output | Where-Object {$_.Count -gt10})替换为((Get-ChildItem $Output | Measure-Object).Count -gt 10)。 -
谢谢 Bill_Stewart,您的代码运行良好。还有一个问题,如果我想检查三个子文件夹中的文件数。是否可以在此脚本中进行一些修改?再次感谢您。
-
查看
Get-ChildItem上的-Recurse开关,以及-File开关,否则该cmdlet 还会列出子文件夹
标签: powershell count smtp output