Windows PowerShell-删除超过X天的文件 [英] Windows PowerShell - Delete Files Older than X Days

查看:24
本文介绍了Windows PowerShell-删除超过X天的文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我目前是PowerShell的新手,我已经根据在网络上收集的信息创建了一个脚本,该脚本将对文件夹中LastWriteTime小于1天的文件执行删除操作。

目前脚本如下:

$timeLimit = (Get-Date).AddDays(-1) 
$oldBackups = Get-ChildItem -Path $dest -Recurse -Force -Filter "backup_cap_*" |
                Where-Object {$_.PSIsContainer -and $_.LastWriteTime -lt $timeLimit}

foreach($backup in $oldBackups)
{
    Remove-Item $dest$backup -Recurse -Force -WhatIf
}

据我所知,-WhatIf命令将向控制台输出该命令在实际场景中"应该"做的事情。问题是-WhatIf不输出任何内容,即使我将其删除,文件也不会按预期删除。

服务器为Windows 2012 R2,该命令正在PowerShell ISE V3中运行。

当该命令起作用时,它将被"转换"为一个任务,该任务将在另一个任务完成某些内容的备份后每晚运行。

推荐答案

我在管道里做的

Get-ChildItem C:	emp | ? { $_.PSIsContainer -and $_.LastWriteTime -lt $timeLimit } | Remove-Item -WhatIf

这对我很管用。因此,您不必注意文件的正确路径。

这篇关于Windows PowerShell-删除超过X天的文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆