Tive problemas semelhantes tentando excluir um projeto que criei na pasta errada com a CLI dotnet. No meu caso, o .vs é uma pasta oculta, então usei o rd com o comando -force para removê-lo.
Estou tentando excluir uma pasta em um script de instalação usando o PowerShell. O script copia vários arquivos para uma pasta de distribuição (usando o RoboCopy) e depois limpa arquivos e pastas supérfluos.
Parece que não consigo usar o PowerShell para excluir um nome de pasta c:\installs\wwhelp\Editors\.vs
mesmo depois de ter definido permissões no Console do Powershell sendo executado como administrador.
Eu basicamente faço isso depois de copiar e limpar a pasta .vs:
set source=\wwapps\wwhelp
set target=\installs\wwhelp
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy UnRestricted
robocopy $source\Editors $target\Editors /MIR
deletefiles $target\Editors\.vs\*.* -r -f <-- deletes files & folder recursively
rd $target\Editors\.vs
Isso falha com:
rd : Cannot remove item
C:\installs\wwhelp\editors\.vs
: You do not have sufficient access rights to perform this operation.
A pasta está vazia e estou em execução como administrador e defini a política de execução. Se eu criar uma pasta chamada vs
na mesma estrutura de pastas, a remoção funcionará.
Da mesma forma, executando o comando rd
na janela de comando com o Admin funciona.
Alguma idéia de porque recebo uma exceção de segurança em uma pasta que começa com .
no Powershell?
Tive problemas semelhantes tentando excluir um projeto que criei na pasta errada com a CLI dotnet. No meu caso, o .vs é uma pasta oculta, então usei o rd com o comando -force para removê-lo.