2011-01-05 20:49:15 +0000 2011-01-05 20:49:15 +0000
28
28
Advertisement

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

Advertisement

Tenho uma cópia de segurança de uma pasta Documents and Settings anterior do Windows que contém apenas o meu utilizador original e dentro de mais 2 directórios: Favorites e Local Settings.

Quando tento apagar Local Settings recebo este erro:

Quando tento apagar Favorites, recebo este erro:

Corri isto numa concha de cmd*:

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

…mas não ajudou, nem devolveu nenhum erro/aviso.

I utilizou Unlocker v1.8.5 e LockHunter repetidamente a vários níveis para ver se algum ficheiro estava a ser utilizado, mas ambos dizem sempre: Não há ficheiros bloqueados.

Actualização #1:

Eu consegui renome do directório, o que me dá agora este aviso antes (de tentar) apagar:

Se eu premir Sim (ou Sim a Todos) então recebo este erro:

Actualização #2:

Deixei chkdsk /f correr o que exigiu uma reinicialização uma vez que está na partição do meu sistema primário. Durante a fase 2 de digitalização, recebi cerca de 40 destas:

Eliminar uma entrada de índice do índice $0 do ficheiro 25.

…seguido de:

Eliminação de cookies de entrada de índice no índice $I30 do ficheiro 37576.

…mas ainda recebo o primeiro diálogo de erro acima quando tento apagar.

Eu voltei a executar chkdsk, desta vez: chkdsk /f /r. Não produzi mensagens. O mesmo resultado ao apagar.

Actualização #3:

Cavando mais fundo, o 99 é o nome de um dos muitos directórios aqui localizados no fundo:

C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\address@hotmail.comSharingMetadata\user@hotmail.com\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\

Dentro de cada um desses directórios encontravam-se ficheiros com nomes tais como

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

Notei que, ao contrário de todos os directórios, não consegui renomear nenhum destes ficheiros. Também reparei que o ficheiro + nomes de dir eram extremamente longos:

Directório original = 194 caracteres Nomes de ficheiros = 100+ caracteres Juntos o comprimento excede o limite de 255 caracteres que é muito* e explicaria a mensagem de erro que afixei na Actualização #1.

Solução Parcial:

Renomear todos os directórios até o comprimento total do caminho ser inferior a 100. Posteriormente consegui renomear os ficheiros .frx, para não mencionar apagar tudo dentro do directório Local Settings.

Esta é apenas uma solução parcial porque estes directórios (vazios) ainda não são apagáveis,

C:\1\2\2\Favorites\Wien\i}O que fazer…
C:\1\2\Favorites\FIRE

O mesmo erro que acima:

Aqui está o que as propriedades do Explorer mostram para ambas as pastas:

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

Usando a resposta de harrymc* combinada com uma leitura completa através deste incrível artigo MS-KB que contém a ideia de quase toda a gente e depois algumas, discretamente intituladas: Não se pode apagar um ficheiro ou uma pasta num volume de sistema de ficheiros NTFS .

consegui apagar a 2ª pasta C:\Favorites\Photography\FIRE - o problema é que havia um espaço de arrasto 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 a eliminação do explorer.

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

Advertisement
Advertisement

Respostas (11)

29
29
29
2011-01-29 01:02:33 +0000

del* é para apagar ficheiros, rd* aka rmdir* é para apagar pastas, portanto…

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

…deve fazer o trabalho! :-)

O parâmetro /s

remove todos os directórios e ficheiros no directório especificado, para além do próprio directório.
Utilizado para remover uma árvore de directórios.


Se isto não funcionar; mesmo não com wildcards/auto-completion; então tem problemas de corrupção.

6
6
6
2011-01-05 20:56:00 +0000

Eu tentaria correr primeiro o chkdsk, como Jeff sugeriu. Se isto não funcionar, poderia arrancar com um CD de linux ao vivo, montar o disco rígido e apagar as pastas de dentro do ambiente linux ao vivo.

6
Advertisement
6
6
2011-01-05 20:53:18 +0000
Advertisement

É muito provável que tenha corrupção de FS(filesystem). Execute um chkdsk depois tente remover os ficheiros.

Certifique-se também de que nada está a ser utilizado dentro do directório, como o aviso sugere.

Recomendaria também fazer uma cópia de segurança dos seus ficheiros importantes antes de qualquer coisa.

5
5
5
2011-01-18 12:39:06 +0000

O seguinte li no site de apoio da Microsoft :

1) usar dir /x para obter os nomes curtos (notação 8.3) de ficheiros / pastas listados 2) usar rmdir /s shortname para remover uma pasta cujo nome longo não é padrão

5
Advertisement
5
5
2011-01-06 01:47:05 +0000
Advertisement

Ainda recebo o diálogo Erro 99 acima quando tento apagar.

99 não é um número de erro - é o nome de um ficheiro ou pasta dentro da pasta que se pretende remover. Procure este item.

Uma vez que o encontre, está apenas a queixar-se de um erro de permissão. Isto é provável porque certas coisas nas pastas dos perfis dos utilizadores são configuradas para ter apenas permissões para esse utilizador e para mais ninguém, e são configuradas para não herdar permissões dos seus pais, ou por qualquer outra razão todas as permissões no ficheiro foram perdidas. O resultado é que nenhuma conta de utilizador no seu computador tem a capacidade de fazer algo com o ficheiro ou pasta.

Para corrigir isto, clique com o botão direito do rato sobre o ficheiro (ou este contém uma pasta para garantir que obtém tudo), escolha Properties no menu de contexto e depois o separador Security no diálogo que se abre. Este ecrã terá um botão Advanced no qual deverá clicar. Procure o separador Owner na caixa de diálogo que se abre. Deverá agora poder utilizar esta janela para tomar posse, o que atribuirá novas permissões de entrada ao item e finalmente permitir-lhe-á apagá-lo.

3
3
3
2011-01-18 20:22:20 +0000

Poderá ser capaz de utilizar a sintaxe Unicode `\?Poderá ser capaz de utilizar a sintaxe Unicode em cmd para apagar directórios demasiado longos, pois o comprimento 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\address@hotmail.com\SharingMetadata\user@hotmail.com\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"
rmdir "\?\C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\address@hotmail.com\SharingMetadata\user@hotmail.com\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"

Poderá ajudar a premir a tecla de tabulação para percorrer os nomes dos directórios uma vez obtido um Poderá ser capaz de utilizar a sintaxe Unicode\?Poderá ser capaz de utilizar a sintaxe Unicode em cmd para apagar directórios demasiado longos, pois o comprimento 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\address@hotmail.com\SharingMetadata\user@hotmail.com\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"
rmdir "\?\C:\Documents and Settings.OLD\User\Local Settings\Application Data\Microsoft\Messenger\address@hotmail.com\SharingMetadata\user@hotmail.com\DFSR\Staging\CS{D4E4AE55-B5E2-F03B-5189-6C4DA6E41788}\"

Poderá ajudar a premir a tecla de tabulação para percorrer os nomes dos directórios uma vez obtido um , para que o Windows comece a auto-completar os directórios que existem sob essa pasta.

Ver Ficheiros de Nomes, Caminhos, e Namespaces da Microsoft.

2
Advertisement
2
2
2011-01-29 08:30:50 +0000
Advertisement

Pessoalmente, concordo com byachna e CarlF que um linux live cd é a vossa melhor aposta. O Linux não se importa com as permissões, por isso pode entrar e apagar coisas sem se queixar. Nunca tive quaisquer problemas com a escrita NTFS do linux. Tenho-o feito regularmente há vários anos.

Compreendo que não se queira meter com o linux, por isso vou sugerir outra coisa. Algo que Ashimema já sugeriu… mas esqueceu-se de alguns links. Em vez de um cd de linux ao vivo, pode experimentar um dos muitos cd’s ao vivo das janelas. http://www.ubcd4win.com/ (requer xp instalar cd para criar) http://www.reatogo.de/REATOGO.htm (requer xp instalar cd para criar) http://www.nu2.nu/pebuilder/ (requer xp instalar cd para criar) http://www.vistape.net/index.php (requer vista instalar dvd para criar)

Tente arrancar em qualquer cd ao vivo que decida usar e apagar as pastas que estão a causar todos os problemas. Uma vez que se trata de janelas, irá reforçar as permissões dos ficheiros. Poderá ter de alterar as permissões ou a propriedade dos ficheiros a fim de os apagar. Perhapse, tente até o truque “\?¢” do cd das janelas ao vivo.

Outra coisa a tentar seria o comando cacls ou icacls para ver se pode dar a si mesmo permissões nas pastas.

0
0
0
2011-01-18 16:56:30 +0000

Inicialize o seu sistema usando uma distro NTFS-aware Linux, digamos um liveCD Ubuntu.

Monte o sistema de ficheiros Windows.

Apague o que quiser, uma vez que o Windows não poderá dizer “Não”.

ANTES DE FAZER ESTE FACILITADO FULL BACKUP.

0
Advertisement
0
0
2011-06-28 15:27:38 +0000
Advertisement

Tarde para a festa mas este método funciona a maior parte do tempo, se não arrancar de uma distro linux e apagar de lá.

Abrir uma janela elevada de Prompt de Comando e deixá-la aberta.

Fechar todos os programas abertos.

Clique em Iniciar, Executar e introduzir TASKMGR.EXE Vá para o separador Processos e Fim de Processo em “Explorer.exe” Deixe o Gestor de Tarefas aberto.

Volte à janela de Prompt de Comando e mude para o directório onde se encontra o AVI (ou outro ficheiro não apagável). No prompt de comando, digite DEL {\i1}- caminho completo para o ficheiro que deseja apagar\i>, ou qualquer comando que deseje.

Volte ao Gestor de Tarefas, clique em File, New Task e introduza EXPLORER.EXE para reiniciar a shell GUI. Fechar o Gestor de Tarefas.

0
0
0
2011-01-20 00:45:33 +0000

Há uma série de formas complicadas e difíceis de resolver isto, como descobri no passado.

Agora que estou confiante com o que estou a fazer, simplesmente corro um chkdsk, depois arranque um cd ao vivo para apagar os ficheiros se ainda houvesse um problema (se está preocupado com as capacidades do linux com ntfs, então experimente ou BartPE ou [Windows PE][2], ambos disponíveis gratuitamente)

Se vai pelo caminho mais longo, todas as outras sugestões certamente o ajudarão a atenuar o erro real.

-1
-1
-1
2011-01-06 03:18:18 +0000

A resposta de Joel está meio certa, é necessário activar primeiro a aba de segurança, ir ao painel de controlo > opções de pastas e a segunda aba (esqueci-me do nome) no final da lista com opções há algo sobre gestão avançada de pastas (mais uma vez não sei qual é o nome em inglês) uma vez que faz isso, pode então definir permissões para o seu utilizador na aba de segurança como mencionado anteriormente.

Advertisement

Questões relacionadas

3
15
12
8
3
Advertisement