Como apagar arquivos e pastas que não podem ser apagados?

28

Eu tenho uma cópia de backup de uma pasta anterior do Windows ' Documents and Settings que contém apenas o meu usuário original e dentro de mais dois diretórios: Favorites e Local Settings .

Quando tento excluir Local Settings , recebo este erro:

QuandotentoexcluirFavorites,receboesteerro:

Eu corri isso em um shell cmd :

attrib *.* -r -a -s -h /s

... mas isso não ajudou, nem retornou erros / avisos.

Eu usei Unlocker v1.8.5 e LockHunter repetidamente em vários níveis para ver se algum arquivo está em uso, mas ambos sempre dizem: Nenhum arquivo bloqueado .

Atualização 1:

Consegui renomear o diretório, que agora me fornece esse aviso antes (tentando) excluir:

SeeupressionarSim(ouSimparaTodos),entãoreceboesteerro:

Atualização 2:

Eu deixei o chkdsk /f executar, o que exigiu uma reinicialização, pois está na partição do sistema principal. Durante a fase 2 de digitalização, recebi cerca de 40 destes:

Deleting an index entry from index $0 of file 25.

... seguido por:

Deleting index entry cookies in index $I30 of file 37576.

... mas ainda recebo o primeiro diálogo de erro acima ao tentar excluir.

Eu executei chkdsk novamente, desta vez: chkdsk /f /r . Não produziu mensagens. O mesmo resultado ao excluir.

Atualização 3:

Indo mais fundo, o 99 é o nome de um dos vários diretórios localizados aqui:

C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\[email protected]\SharingMetadata\[email protected]\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\

Dentro de cada um desses diretórios havia arquivos com nomes como:

2300-{C93D01AC-0739-4FD9-88C7-13D2F21A208E}-v2300-{C93D01AC-0739-4FD9-88C7-13D2F21A208E}-v2300-Downloaded.frx

Notei que, ao contrário de todos os diretórios, não consegui renomear nenhum desses arquivos. Também notei que os nomes dos arquivos + dir eram extremamente longos:

Diretório original = 194 caracteres
Nomes de arquivo = 100 caracteres ou mais Juntos, o comprimento excede o limite de 255 caracteres que é ruim e explicaria a mensagem de erro que publiquei na Atualização 1.

Solução parcial:

Renomeie todos os diretórios até que o comprimento total do caminho seja menor que 100. Depois, consegui renomear os arquivos .frx , sem mencionar excluir tudo dentro do diretório Local Settings .

Esta é apenas uma solução parcial porque esses diretórios (vazios) ainda não são deletáveis,

C:\Favorites\Wien\What To Do..
C:\Favorites\Photography\FIRE

O mesmo erro acima:

VejaoqueaspropriedadesdoExplorermostramparaasduaspastas:

Atualização # 4 (outra solução parcial):

Usando a resposta do harrymc combinada com a leitura completa através deste incrível artigo do MS-KB que contém a ideia de quase todos e então alguns, discretamente intitulados: Você não pode excluir um arquivo ou uma pasta em um volume do sistema de arquivos NTFS .

Consegui excluir a segunda pasta C:\Favorites\Photography\FIRE - o problema é que havia um espaço invisível no final. Tive sorte quando fiz um auto-completar enquanto brincava com o comando del "\?\<path>" que ele sugeriu.

NOTA: Um del normal NÃO funcionou, nem foi excluído de explorer .

Agora tudo o que resta é o primeiro diretório C:\Favorites\Wien\What To Do.. (sim, eu tentei infinitamente com múltiplas combinações da solução acima;)

    
por glenneroo 10.05.2017 / 16:28

11 respostas

29

del é para excluir arquivos, rd também conhecido como rmdir é para excluir pastas, então ...

rd /s "\?\C:\Favorites\Wien\What To Do.."

... deve fazer o trabalho! : -)

O parâmetro /s

removes all directories and files in the specified directory in addition to the directory itself.
Used to remove a directory tree.

Se isso não funcionar; mesmo não com curingas / preenchimento automático; então você tem problemas de corrupção.

    
por 29.01.2011 / 12:01
6

Eu tentaria executar o chkdsk primeiro, como Jeff sugeriu. Se isso não funcionar, você pode inicializar com um live cd do linux, montar o disco rígido e excluir as pastas de dentro do ambiente live do linux.

    
por 05.01.2011 / 21:56
6

Você provavelmente tem corrupção de FS (sistema de arquivos). Execute um chkdsk e tente remover os arquivos.

Verifique também se nada está sendo usado no diretório, como o aviso sugere.

Também recomendo fazer um backup de seus arquivos importantes antes de qualquer coisa.

    
por 05.01.2011 / 21:53
5

I still receive the Error 99 dialog above when trying to delete.

99 não é um número de erro - é o nome de um arquivo ou pasta dentro da pasta que você deseja remover. Procure por este item.

Depois de encontrá-lo, é só reclamar de um erro de permissão. Isto é provável porque certas coisas nas pastas de perfis dos usuários estão configuradas para ter somente permissões para aquele usuário e ninguém mais, e estão configuradas para não herdar permissões de seus pais, ou por algum outro motivo todas as permissões no arquivo foram perdidas. O resultado é que nenhuma conta de usuário no seu computador tem a capacidade de fazer qualquer coisa com o arquivo ou pasta.

Para corrigir isso, clique com o botão direito do mouse no arquivo (ou ele contém a pasta para garantir que você obtenha tudo), escolha Properties no menu de contexto e, em seguida, a guia Security na caixa de diálogo que é aberta. Esta tela terá um botão Advanced no qual você deve clicar. Procure a guia Owner na caixa de diálogo aberta. Agora você deve poder usar essa janela para assumir a propriedade, o que atribuirá novas entradas de permissões ao item e, finalmente, permitirá que você o exclua.

    
por 06.01.2011 / 02:47
5

A seguir, eu li o no site de suporte da Microsoft :

1) use dir /x to get the short names (8.3 notation) of files / folders listed 2) use rmdir /s shortname to remove a folder whose long name is non-standard

    
por 18.01.2011 / 13:39
3

Você pode usar a sintaxe \?\ do Unicode em cmd para excluir diretórios muito longos, pois o tamanho do caminho com esta sintaxe é "limitado" a 32.767 caracteres:

del /s /f /q "\?\C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\[email protected]\SharingMetadata\[email protected]\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"
rmdir "\?\C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\[email protected]\SharingMetadata\[email protected]\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"

Pode ser útil pressionar a tecla tab para percorrer os nomes dos diretórios quando você obtiver um \ , para que o Windows inicie automaticamente os diretórios existentes nessa pasta.

Veja Nomeação de arquivos, caminhos e namespaces da Microsoft .

    
por 18.01.2011 / 21:22
2

Eu pessoalmente concordo com o Byachna e o CarlF que um CD ao vivo do linux é a sua melhor aposta. O Linux não se importa com as permissões, então você pode entrar e excluir coisas sem reclamar. Eu nunca tive problemas com a escrita NTFS do Linux. Eu tenho feito isso regularmente por vários anos.

Eu entendo que você não quer mexer com o Linux, então eu vou sugerir outra coisa. Algo que Ashimema já sugeriu ... mas esqueceu alguns links. Em vez de um live cd do linux, você pode experimentar um dos muitos live cd do windows.

link (requer o cd de instalação do xp para criar)

link (requer o cd de instalação do xp para criar)

link (requer o cd de instalação do xp para criar)

link (requer o vista install dvd para criar)

Tente inicializar em qualquer CD ao vivo que você decidir usar e exclua as pastas que estão causando todos os problemas. Uma vez que é o windows, ele irá impor permissões de arquivo. Você pode ter que alterar as permissões ou a propriedade dos arquivos para excluí-los. Perhapse ainda tente o truque "\? \" Do live windows cd.

Outra coisa para tentar seria o cacls ou icacls verifica se você pode conceder permissões às pastas.

    
por 29.01.2011 / 09:30
0

Inicialize seu sistema usando uma distribuição Linux com reconhecimento de NTFS, digamos um liveCD do Ubuntu.

Monte o sistema de arquivos do Windows.

Exclua o que você quiser, pois o Windows não poderá dizer "Não".

ANTES DE FAZER ISTO FAZER UM BACKUP TOTAL.

    
por 18.01.2011 / 17:56
0

Existem várias maneiras complicadas e difíceis de resolver isso, como descobri no passado.

Agora que estou confiante com o que estou fazendo, vou simplesmente executar um chkdsk, depois inicializar um live cd para deletar os arquivos se ainda houver algum problema (se você está preocupado com as habilidades do linux com o ntfs, em seguida, experimente o BartPE ou o [Windows PE] [2], ambos disponíveis gratuitamente

Se você está indo para o caminho mais longo, todas as outras sugestões certamente ajudarão você a reduzir o erro real.

    
por 29.01.2011 / 16:09
0

Tarde para a festa, mas este método funciona a maior parte do tempo, se não for iniciado a partir de uma distribuição Linux e excluir a partir daí.

Abra uma janela de prompt de comando elevada e deixe-a aberta.

Feche todos os programas abertos.

Clique em Iniciar, Executar e digite TASKMGR.EXE Vá para a guia Processos e Finalizar processo em "Explorer.exe". Deixe o Gerenciador de Tarefas aberto.

Volte para a janela do prompt de comando e mude para o diretório no qual o AVI (ou outro arquivo não-elástico) está localizado. No prompt de comando, digite DEL < caminho completo para o arquivo que você deseja excluir & gt ;, ou o comando que desejar.

Volte para o Gerenciador de Tarefas, clique em Arquivo, Nova Tarefa e digite EXPLORER.EXE para reiniciar o shell da GUI. Feche o Gerenciador de Tarefas.

    
por 28.06.2011 / 17:27
-1

A resposta de Joel está certa, você precisa ativar a guia de segurança primeiro, vá para o painel de controle > opções de pastas e a segunda guia (eu esqueci o nome) no final da lista com opções há algo sobre gerenciamento avançado de pasta (mais uma vez eu não sei o que é o nome em Inglês) uma vez que você pode definir permissões para seu usuário na guia de segurança, como mencionado anteriormente.

    
por 06.01.2011 / 04:18