- Crie uma pasta com um nome normal e
cd
nela. Suponha que o nome completo desta pasta sejaC:\path\test
. - Crie uma pasta com nome de ponto em
test
commd \?\C:\path\test\....
. Curiosamente,cmd
não deixa vocêcd
entrar nele - ele apenas coloca você de volta emtest
. O Windows Explorer mostra essa pasta como contendo ela mesma, mas quando você entra na segunda camada, nada aparece. - Crie um arquivo na pasta de pontos com
echo Ah! > ....\a.txt
. O Windows Explorer mostra esse arquivo na segunda pasta com nome de ponto (que nós não criamos!).
Agora, desative e salve os arquivos:
Se a pasta de pontos tiver um nome abreviado
- Verifique se você está
cd
na pasta com nome normal (test
no cenário acima). Eu recomendo manter o Explorer fechado para evitar problemas de bloqueio. - Execute
dir /x
para obter o nome abreviado da pasta de pontos. Para mim, é atualmente8A9C~1
, mas parece mudar quando eu re-executar o procedimento. - Execute
xcopy 8A9C~1\* . /e
para mover todo o conteúdo da pasta estranha para a pasta normal. Você deve colocar o nome abreviado da sua pasta de pontos. - Verifique se os arquivos e a estrutura de pastas estão intactos na pasta normal (
type a.txt
deve produzirAh!
). - Esvazie a pasta de pontos com
del /s /q 8a9c~1
. - Torqueie a pasta de pontos e seus subdiretórios agora vazios com
rd /s /q 8a9c~1
.
Se a pasta de pontos não tiver um nome abreviado
- Abra um prompt de comando administrativo.
cd
para a pasta que contém a pasta de pontos. - Execute
mklink /d normal \?\C:\path\test\....
para criar um link simbólico chamadonormal
. - Use o Windows Explorer para mover todo o conteúdo de
normal
(que aponta para o conteúdo da pasta de pontos) em um lugar com nome razoável. - Use o Windows Explorer para excluir a pasta
normal
faux-now vazia. - De volta ao prompt de comando, execute
rd \?\C:\path\test\....
para remover a pasta de pontos.
Todos os seus arquivos agora estão seguros em uma pasta com nome normal. No futuro, talvez você queira evitar nomear pastas apenas com pontos.