У меня есть следующий скрипт:
try {
Invoke-Command -Computer $Server -ScriptBlock {
param ($dir, $name)
Get-ChildItem -Path $dir |
Where {$_.Name -Match "$name"} |
Remove-Item -confirm:$false -Recurse -Verbose
} -ArgumentList $Directory, $DB
Write-Host "`r`nsuccessfull! " -foregroundcolor yellow -backgroundcolor black
}
catch {
write-host "`r`nFAILED!" -foregroundcolor red -backgroundcolor black
Write-Host "$($error[0])`r`n" -foregroundcolor magenta -backgroundcolor black
}
если не существует файлов для удаления ... в настоящее время он по-прежнему говорит "успешно" в качестве вывода ... могу ли я уточнить это, чтобы сказать "there was no files to delete" else "successfully deleted x number of files"
?
также, recurse
на многословном необходимо, потому что в противном случае я вынужден вручную подтвердить даже с параметром подтверждения.Я думаю, это потому, что в целевой папке (папках) есть много подпунктов, которые я хочу удалить ...
однако я получаю тонну многословных сообщений для каждого из этих элементов, говорящих
VERBOSE: выполнение операции «Удалить каталог» для цели \ name1 \ subitem
VERBOSE: Выполнение операции «Удалить каталог» для цели \ name1 \ subitem1
VERBOSE:Выполняя операцию «Удалить каталог» для target \ name1 \ subitem2
, можно ли сделать так, чтобы он просто печатал многословно на уровне папки вместо каждого отдельного элемента?
VERBOSE: Выполнение операции «Удалить каталог» для цели \ name1