Powershell-设置保留数据设置

问题描述 投票:0回答:1

我需要一个PS脚本,该脚本将删除目录的所有子文件夹,但以下子文件夹除外:

  • 过去7天的一切]
  • 过去一个月中每周的最新文件夹
  • 过去一年中每个月的最新文件夹
  • 我对PS相当陌生,已经花了很多时间挣扎。讨厌哭着寻求帮助,但我想,这是正确的时刻。

谢谢!

我需要一个PS脚本,该脚本将删除目录的所有子文件夹,但这些子文件夹除外:过去7天中的所有内容过去一个月中每周的一个最新文件夹,每个月中的最新文件夹...]]

powershell rotation backup retention
1个回答
0
投票

现在完成(:

$savedays = @('7', '14', '21', '30', '60', '90', '120', '150', '180', '210', '240', '270', '300', '330', '360')

$killlist = @()

For ($i=0;$i -lt $savedays.Length; $i++) {

    $killlist += @(Get-ChildItem $path |
        Sort-Object -Property LastWriteTime -Descending | 
        Where-Object { $_.LastWriteTime -lt (get-date).AddDays(-$savedays[$i]) -and $_.LastWriteTime -gt (get-date).AddDays(-$savedays[$i+1])} |
        Select-Object -Skip 1
        ) 

}

foreach ($build in $killlist) {
    Remove-Item $build.fullname –recurse -whatif
}
© www.soinside.com 2019 - 2024. All rights reserved.