Я столкнулся с проблемой с моим скриптом, всякий раз, когда я делаю удаление мусорной корзины, а на карте есть папка в папке с файлом, который необходимо удалить, он не будет Работа.Добавление recurse + silently continue to trashbin delete
Проблема заключается в том, что мне нужно добавить рекурсию и -ErrorAction молча продолжают. Но я не знаю, как это сделать, поскольку методы перемещения файлов в корзину для мусора довольно сложны, на мой взгляд.
Не могли бы вы, ребята, помочь мне?
Мой код:
## Top of the script
param(
[Parameter(Mandatory=$true)]
[ValidateRange(0,99999)]
[int]$minutes,
[Parameter(Mandatory=$true)]
[ValidateScript({Test-Path $_})]
[string]$maplocation,
[Parameter(Mandatory=$true)]
[ValidateSet("Direct","TrashBin")]
[string]$consequence
)
## Variables
$maxAge = (Get-Date).AddMinutes(-$minutes)
$files = Get-ChildItem $maplocation -Recurse
$time = get-date
$fortrashbin = $maplocation + '\' + $file
##
foreach ($file in $files)
{
if ($file.lastwritetime -lt $maxage)
{
switch ($consequence)
{
"direct"
{
write-verbose "File Found $file" -verbose
remove-item $file.fullname -recurse -erroraction silentlycontinue
write-verbose "Deleting $file" -verbose
}
"trashbin" {
write-verbose "File Found $file" -verbose
write-verbose "moving $file to trashbin" -verbose
Add-Type -AssemblyName Microsoft.VisualBasic
[Microsoft.VisualBasic.FileIO.FileSystem]::DeleteFile($fortrashbin,'OnlyErrorDialogs','SendToRecycleBin')
}
}
}
}