Como excluir um arquivo que contém uma barra invertida no nome no Windows 7? [duplicado]


40

Possível duplicado:
como forçar o Windows XP a renomear um arquivo com um caractere especial?
como excluir arquivos (inválidos) com dois pontos em seu nome no windows

Quero excluir um arquivo chamado workspaces\google-gson-1.7.1-release.zipSim, ele contém uma barra invertida no nome.

Aqui está:

G:\>dir Z_DRIVE
 Volume in drive G is samsung
 Volume Serial Number is 48B9-7E1D

 Directory of G:\Z_DRIVE

04/06/2012  08:09 PM    <DIR>          .
04/06/2012  08:09 PM    <DIR>          ..
05/01/2011  02:21 PM           528,016 workspaces\google-gson-1.7.1-release.zip
           1 File(s)        528,016 bytes
           2 Dir(s)  88,400,478,208 bytes free

A primeira tentativa é apenas excluí-lo do Windows Explorer, mas ele diz que não consegue encontrar o arquivo.

Então, tentei na linha de comando:

G:\>del Z_DRIVE\workspaces\google-gson-1.7.1-release.zip
The system cannot find the file specified.

E, depois de pesquisar um pouco nas internets, também tentei o seguinte, sem sorte:

G:\>del \\?\G:\Z_DRIVE\workspaces\google-gson-1.7.1-release.zip
The system cannot find the file specified.

Além de inicializar a partir de um CD do Linux, existe uma maneira de se livrar desse arquivo?

Atualização em 6 de abril de 2012: também tentei as seguintes combinações, mas o erro é o mesmo:

G:\>del "\\?\G:\Z_DRIVE\workspaces\google-gson-1.7.1-release.zip"
G:\Z_DRIVE>del workspaces\google-gson-1.7.1-release.zip
G:\Z_DRIVE>del "workspaces\google-gson-1.7.1-release.zip"
G:\Z_DRIVE>del workspaces*google-gson-1.7.1-release.zip

Atualização em 7 de abril de 2012: Antes de prosseguir e experimentar no Linux, veja uma captura de tela que mostra algumas das tentativas baseadas nas respostas aqui. Não sei se será fácil reproduzir, e remover o arquivo do Linux ou usar o Cygwin parece trapaça :)

Algumas das tentativas de remoção


Você tentou renomeá-lo para outra coisa e excluí-lo?
Alex

Existe mais alguma coisa lá que começa com áreas de trabalho?
Joshua Drake

13
Como você conseguiu esse arquivo? É um bom truque para irritar alguém :-)
nalply

@ Moo não é um duplicado, este é mais complicado!
Espinchi:

11
Excluir a pasta Z_DRIVE, criar uma nova pasta Z_DRIVE?
Konerak

Respostas:


8

Que tal correr CHKDSK?

Havia uma pergunta semelhante aqui: como forçar o Windows a renomear um arquivo com um caractere especial? , uma das respostas para as quais demonstramos que CHKDSKexclui arquivos com caracteres inválidos em seus nomes.


A chkdsk /Fconsertou! Ele basicamente excluído o arquivo :)
espinchi

Tinha um arquivo com uma barra para a frente (deveria ser um traço, mas um pouco foi invertido em algum lugar). Não foi possível excluir com explorer, cmd, nome abreviado, powershell ou cygwin, mas o chkdsk o removeu do índice e o restaurou automaticamente com o nome correto. Yay!
Cameron #

29

Eu tentaria usar um nome 8.3 curto:

del worksp~1.zip

Como isso não parece funcionar para esse arquivo específico, a próxima coisa que eu tentaria é abrir um prompt de comando do Powershell e, em seguida, fazer:

Get-ChildItem G:\Z_Drive\* | Where-Object{$_.Name -Like 'workspaces*'} | Remove-Item -WhatIf

Certifique-se de brincar com o padrão para corresponder apenas a esse arquivo (não tenho certeza se há outros arquivos lá ou não). Depois de ver que ele tentaria excluir apenas um arquivo, remova a opção -WhatIf



11
dir / X mostra nomes curtos com a listagem de diretório.
Rob

3
Essa é uma ótima sugestão, eu estava convencido de que funcionaria ... mas não funciona! Como o @Rob sugeriu, usei o dir / x para descobrir o nome abreviado, mas ... o nome abreviado é o mesmo que o nome longo. Não posso acreditar!
Espinchi:

Gostaria de explicar como isso funciona?
Ivo Flipse

3
Você pode ser capaz de definir o nome curto para o arquivo manualmente: fsutil file setshortname G:\workspaces\google-gson-1.7.1-release.zip google.zip. Veja: technet.microsoft.com/en-us/library/cc788058%28v=ws.10%29.aspx
Andrew Lambert

9

abra um cmd, execute dir / x, encontre o nome abreviado do arquivo e exclua-o.


Acredite ou não, a saída de dir / x é _ workspaces \ google-gson-1.7.1-release.zip_. Eu estava convencido de que essa resposta (que coincide com a @ EBGreen) funcionaria!
Espinchi:

Realmente estranho, além de tentar excluir o diretório pai recursivamente, se você ainda não tentou, estou totalmente perplexo. Se você pode inicializar um live cd do Linux e ainda ver o arquivo, provavelmente poderá excluir a partir daí. Pode ser necessário montá-lo rw, pois às vezes o mtgs é montado apenas ro. Muito interessante e eu gostaria de tentar. Finalmente, você pode precisar ligar para a Microsoft se tudo falhar.
precisa

Sim, é realmente estranho. Tentei excluir a pasta pai, esse era realmente o meu objetivo original.
Espinchi:

4

Você poderia tentar renomeá-lo?

rename *.zip tmp.zip

Ou ver se algo como FileASSASSIN faria o truque ...
Ross Aiken

Não, ele diz "O sistema não pode encontrar o caminho especificado". Boa ideia, embora
espinchi

4

você tentou com PowerShell? caso contrário, tente:

Primeiro vá para a pasta, inicie o powershell (digitando powershell, digite) e copie-o:

ls | ?{$_.name -like "*\*"} | %{$_.delete()}

Esse regex é inválido. E o PowerShell tem menos suporte do que cmdpara certos recursos NTFS (por exemplo, ADS). Eu não esperava que isso funcionasse.
Joey #

Você está certo! Fixed :).
24412 Lucas

3

Você pode digitar a primeira parte do nome do arquivo e preencher automaticamente uma guia? Isso geralmente formata o nome do arquivo da maneira específica que o sistema exige (barras duplas, aspas triplas etc.)


Boa sugestão. Eu usei o preenchimento automático sempre que possível, para evitar erros de digitação.
Espinchi:


2

Tente colocar o nome do arquivo entre aspas duplas (").


e se isso não funcionar sozinho, use aspas duplas no final e escape apenas da barra simples.
Joshua Drake

Tentei isso, mas sem sorte. Atualizei a pergunta original com esta sugestão. Boa tentativa, de qualquer maneira :)
espinchi

2

experimentar:

del workspaces*google-gson-1.7.1-release.zip

* é um caractere especial que significa tudo; portanto, usando este comando, você excluirá

workspaces\google-gson-1.7.1-release.zip
workspacesagoogle-gson-1.7.1-release.zip
workspacesaeiougoogle-gson-1.7.1-release.zip
e assim por diante..

EDITAR:

se possível, remova todos os arquivos e pastas Z_DRIVEe remova diretamente o diretório ..., crie um novo Z_DRIVE e retorne os arquivos anteriormente movidos ...


Tentei isso, mas sem sorte. Eu atualizei a pergunta original com isso. Boa tentativa, de qualquer maneira :)
espinchi

atualizei a minha resposta com uma solução alternativa, não é exatamente o que você quer fazer, mas o resultado final deve ser o mesmo ...
Marcx

2

Acredito que esses tipos de arquivos com nomes estranhos só podem ser criados e removidos de scripts, aplicativos, etc. Portanto, você pode criar um script do Windows com o WSH e usá-lo lá. A referência da MS tem o exemplo perfeito.

// JScript.
Shell = new ActiveXObject("WScript.Shell");
FSO = new ActiveXObject("Scripting.FileSystemObject");
DesktopPath = Shell.SpecialFolders("Desktop");
FSO.DeleteFile(DesktopPath + "\\test.lnk")

' VBScript.
Set Shell = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
DesktopPath = Shell.SpecialFolders("Desktop")
FSO.DeleteFile DesktopPath & "\test.lnk"

2

para resolver os arquivos existe uma maneira de trabalhar, instale o linux-ubuntu ou use-o com o live cd e depois exclua o arquivo ... isso acontece comigo quando eu faço arquivos com "xxx" no drive de gordura quando tento abrir renomear ou excluí-lo no Windows nunca permitir, espero que esta ajuda


1

Acredite ou não, a saída de dir / x é _ workspaces \ google-gson-1.7.1-release.zip_

Desculpe, acho que você está olhando a coluna errada da saída. O comando "dir / x" deve exibir o nome alternativo para todos os arquivos com mais de 8 caracteres no nome. Você pode exibir a saída deste comando em sua pergunta, como fez no comando "dir", por favor?

C:\Windows>dir /x
Volume in drive C is OS
Volume Serial Number is 9080-5E4E

Directory of C:\Windows

01/01/2012  18:29    <DIR>                       .
01/01/2012  18:29    <DIR>                       ..
14/07/2009  06:32    <DIR>                       addins
14/07/2009  04:20    <DIR>          APPCOM~1     AppCompat
11/08/2011  18:12    <DIR>                       AppPatch

Como você pode ver, o diretório "AppCompat" é a única pasta com mais de 8 caracteres e, portanto, recebeu um nome abreviado. A quarta coluna exibe o nome abreviado (se criado).


dir /xnão cria nomes abreviados. Esse é um recurso do sistema de arquivos e pode ser desativado. Fundamentalmente, é apenas mais um link físico. Além disso, isso não é uma resposta.
Joey #

3
Não quis dizer criar e ajustei a resposta. Não sou capaz de comentar a pergunta original ou as respostas de outras pessoas porque tenho apenas 1 representante, por isso tenho que criar uma resposta para ajudar o OP. Eu acredito que é uma resposta válida se o OP estava faltando a quarta coluna da saída do comando e isso ajuda a resolver o problema.
philj


0

Supondo que você esteja usando o SDK do Android, tente excluí-lo do Shell do Android usando o rmcomando Aqui está um exemplo, na seção Da tela de recuperação .


0

Como Z_DRIVEcontém apenas uma coisa, basta excluir o diretório e, em seguida, recriá-lo.


0

Parece estúpido, mas você pode tentar Java. Lembro-me de que algumas vezes atingi algum arquivo como você. E eles foram criados por Java e removidos por java.

Outra maneira de solucionar o problema é tentar mover a pasta. Afaste todos os outros arquivos e exclua a pasta recursivamente, existem algumas ferramentas para remover a pasta sem repetir os arquivos internos.


0

Parece que esta unidade está associada aos documentos do Google Workspace ou do Google Online, que cria uma unidade na sua área de trabalho. Sugiro encontrar o aplicativo que lida com isso e excluir o arquivo ou pasta da interface do Google Docs ou desinstalá-lo, embora isso também possa livrar-se de outros arquivos na pasta da unidade, faça backup dos dados primeiro.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.