删除并计算早于例如的文件。 31天

时间:2017-03-15 14:09:35

标签: powershell

我试图找到一个PowerShell脚本的解决方案,它可以删除文件夹和子文件夹中的所有文件,比例如早。 31天。

删除文件的数量和文件夹中的文件总数可能会很好。

我应该用它在Slack上发帖,这就是为什么我想拥有多少个文件。

提前致谢。

1 个答案:

答案 0 :(得分:2)

要回答部分问题,您可以采取以下方法来完成您所需的大部分工作。我自己用它来清理文件夹。

$Path = C:\test
$DaysBack = "-31" 
$CurrentDate = Get-Date
$DatetoDelete = $CurrentDate.AddDays($DaysBack)

#delete files from $Path directory that are older than $Daysback
Get-ChildItem -Path $Path -Include * -Recurse | Where-Object {$_.LastWriteTime -lt $DatetoDelete} | Remove-Item -ErrorAction SilentlyContinue -Recurse -Force

然后,您需要添加一些日志记录,以便在运行删除之前计算文件和文件夹,以计算您可以使用的文件和文件夹:

Get-ChildItem $Path -Recurse | Measure-Object | ForEach-Object{$_.Count}

或者只是根据您的要求计算文件,您可以在GetChildItem之后使用-File参数指定文件:

Get-ChildItem $Path -Recurse -File | Measure-Object | ForEachObject{$_.Count}