你能帮我用一个脚本(在 Powershell 上制作)来删除特定文件夹中超过 5 天的文件(最终是子文件夹)吗?
Could you help me with a script (made on Powershell) to delete files (eventualy subfolders) of a specific folder that are older than 5 days?
正如我在问题中所说,我尝试创建一个脚本来删除文件夹中超过 5 天的文件和子文件夹。
我是 Powershell 的新手,我已经看过一些教程并阅读了它的语法,但这对我帮助不大,所以我只是找到了一个与我需要的代码相似的代码,我已经尝试过了使其适应我的需要。我会把它贴在这里:
$limit = (Get-Date).AddDays(-5)
$path = "C:\Users\Me\Desktop\example"
Get-ChildItem -Path $path -Recurse | Where-Object {$_.PSIsContainer -and
$_.CreationTime -lt $limit} | Remove-Item
脚本已经运行,没有任何错误信息,但是文件没有被删除。我想知道可能是什么问题。顺便问一下,这个脚本也会删除子文件夹吗?另外,我该如何安排这个脚本?
注意:正如我所说,我是初学者,所以如果有人能为我阐明这些对象,我将非常高兴:"PSIsContainer"、"CreationTime"、“|”。我已经搜索过这个“$_”是什么了。意思是,但我还没有完全理解,所以如果有人能直接告诉我,我也将非常感激。提前谢谢你。
我尝试了不同的代码结构,但基本上做同样的事情,而且它奏效了:
$Now=Get-Date
Get-Childitem C:\Users\Me\Downloads | Where-Object { $_.LastWriteTime –lt
$Now.AddDays(-5) } | Remove-Item
现在我不确定它是否也会删除子文件夹,我仍然需要安排它,但我会继续尝试,如果我成功了,我会在这里带来一些更新。
正如我在问题中所说,我尝试创建一个脚本来删除文件夹中超过 5 天的文件和子文件夹。
我是 Powershell 的新手,我已经看过一些教程并阅读了它的语法,但这对我帮助不大,所以我只是找到了一个与我需要的代码相似的代码,我已经尝试过了使其适应我的需要。我会把它贴在这里:
$limit = (Get-Date).AddDays(-5)
$path = "C:\Users\Me\Desktop\example"
Get-ChildItem -Path $path -Recurse | Where-Object {$_.PSIsContainer -and
$_.CreationTime -lt $limit} | Remove-Item
脚本已经运行,没有任何错误信息,但是文件没有被删除。我想知道可能是什么问题。顺便问一下,这个脚本也会删除子文件夹吗?另外,我该如何安排这个脚本?
注意:正如我所说,我是初学者,所以如果有人能为我阐明这些对象,我将非常高兴:"PSIsContainer"、"CreationTime"、“|”。我已经搜索过这个“$_”是什么了。意思是,但我还没有完全理解,所以如果有人能直接告诉我,我也将非常感激。提前谢谢你。
我尝试了不同的代码结构,但基本上做同样的事情,而且它奏效了:
$Now=Get-Date
Get-Childitem C:\Users\Me\Downloads | Where-Object { $_.LastWriteTime –lt
$Now.AddDays(-5) } | Remove-Item
现在我不确定它是否也会删除子文件夹,我仍然需要安排它,但我会继续尝试,如果我成功了,我会在这里带来一些更新。