#powershell #directory #subdirectory
#powershell #каталог #подкаталог
Вопрос:
Я использую win 10 и Power Shell версии 5.118362.1110
У меня есть сотни дубликатов именованных подкаталогов в нескольких подкаталогах в одном каталоге, мне нужно удалить конкретные каталоги и их содержимое, и просмотр каждого из них вручную занимает очень много времени. Было бы здорово, если бы он мог ссылаться на текстовый файл, который я мог бы ввести, в котором они могли бы отображаться по одной строке за раз. (или что бы вы ни предложили).
Я пробовал:
$source="h:Batch Remove TEST" #location of directory to search
$strings=@("1306001", "1311001")
cd ($source); get-childitem -Include ($strings) -Recurse -force | Remove-Item -Force –Recurse
Это приведет к удалению двух папок из первого подкаталога, но не из последующих вложенных каталогов.
Он вернул эту ошибку:
Get-ChildItem : Access is denied
At H:Batch Remove TESTcm.ps1:1 char:1
Get-ChildItem . -Include 1306001,1311001 -Recurse -Force | Remove-Ite ...
CategoryInfo : NotSpecified: (:) [Get-ChildItem],UnauthorizedAccessException
FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetChildItemCommand
Я в тупике.
Спасибо!
Комментарии:
1. Похоже, вы не можете удалить файл powershell, который у вас открыт в данный момент
2. Каталоги и их файлы находятся под каталогом файлов powershell. Он отлично работает в первом подкаталоге, затем останавливается перед проверкой перед следующим подкаталогом. Мне нужно, чтобы проверить все подкаталоги в файле powershell, удалить каталоги и файлы, указанные в $strings, а не только первый подкаталог. Спасибо!