![](/img/trans.png)
[英]Batch script to move file from scource to destination folder for files older than 30 day
[英]How to delete 30 day older files and keep last day files for each month in powershell
可以使用下面的 cmdlet 删除所有超过 30 天的文件,但我想保留每个月的最后一天备份。 我的备份文件包含没有相同前缀的日期格式 yyyymmddhhmm。
信息202107170102.7z
testdatbase202107170242.7z
otherdb202107170245.7z
$limit = (Get-Date).AddDays(-30)
$path = "C:\Some\Path"
Get-ChildItem -Path $path -Recurse -Force | Where-Object { !$_.PSIsContainer -and $_.CreationTime -lt $limit } | Remove-Item -Force
任何帮助将非常感激
此函数接受一个日期对象并返回该月的最后一天:
function Get-LastDayOfMonth{
param(
[System.DateTime]$date
)
$next_month = $date.AddMonths(1).Month
while($date.Month -ne $next_month){
$date = $date.AddDays(1)
}
return $date.AddDays(-1)
}
我相信您可以使用此辅助函数使其工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.