我有这个脚本试图删除所有超过7天的文件夹。所有的文件夹都位于被称为“BackupPath”在特定目录下在PowerShell中删除目录对象及其内容
这是脚本:
$date=Get-Date -UFormat "%d-%m-%y"
$BackupPathday="C:\"+$env:computername+"GPOBackup\$date"
$BackupPath="C:\"+$env:computername+"GPOBackup"
if ((Test-Path $BackupPathday) -eq 0) {
New-Item -ItemType Directory -Force -Path $BackupPathday
}
else {
Write-Host "Today´s backup already exists"
}
$Folders=Get-ChildItem $BackupPath
foreach ($i in $Folders) {
$Days=((Get-Date) - $i.CreationTime).Days
#PSISContainer is true means that $i is a folder, ohterwise is a file
if ($Days -ge 7 -and $i.PsISContainer -eq $True) {
$i.Delete()
}
}
当我运行它,我得到这个错误信息:
异常调用“删除”用 “0” 的参数(一个或多个): “目录不是 空”。 在C:\用户\ X \桌面\ power.ps1:18字符:14 + $ i.Delete < < < <() + CategoryInfo:NotSpecified:(:) [],MethodInvocationException + FullyQualifiedErrorId:DotNetMethodException使用“0”参数调用“Delete”的异常:“该目录不是空的。 “ 在C:\用户\ X \桌面\ power.ps1:18字符:14 + $ i.Delete < < < <() + CategoryInfo:NotSpecified:(:) [],MethodInvocationException + FullyQualifiedErrorId:DotNetMethodException
有武力删除这些文件夹及其内容什么办法? 我不知道,如果有一个现有的方法来做到这一点作为I'm新的PowerShell的。
感谢
我想到这一点也和它做没有工作: 删除项:找不到路径'C:\ Users \ x \ Desktop \ 26-09-15',因为它不存在... – miticoluis
不幸的是,它也没有工作。 Remove-Item:无法将参数绑定到参数'Path',因为它为空。 – miticoluis
您可能必须使用'GCI $ path -Recurse |删除项目' – user4317867