Exclui um arquivo dentro da subpasta usando o bastão

0

Eu sei o nome da subpasta dentro da qual o arquivo que eu quero excluir está localizado. O nome da subpasta é "Minha subpasta" e o arquivo que eu quero excluir dentro da subpasta é "Arquivo inválido". Eu estou no drive "D". "Minha subpasta" está localizada dentro de D:\Folder-2\ ; %código%; %código%; D:\Folder-4\ etc etc (não sei os nomes reais das pastas dentro das quais "Minha subpasta" é). Eu quero pesquisar essas pastas apenas para excluir "Bad File.txt" usando o arquivo .bat.

Eu não quero isso: -

@echo off
del /s "Bad File.txt"

Isso irá procurar a unidade inteira, o que levará tempo. O que eu quero na palavra mais perfeita é, eu quero procurar por "Minha Subpasta" Primeiro. Em seguida, "Minha subpasta" deseja excluir o arquivo "arquivo inválido"

    
por Deb 20.01.2014 / 19:11

2 respostas

2

Se você tiver absoluta certeza de que há apenas uma instância de Minha subpasta, então:

@echo off
Set StartFolder=D:\Path\To\A\Folder
for /f "tokens=*" %%a in ('DIR /s /b /ad "%StartFolder%"') Do del "%%a\Bad File.txt"

Basta alterar o caminho de "StartFolder" na linha dois para a pasta que você deseja começar a procurar.

Embora eu realmente não ache que procurar pela pasta melhore o tempo que leva (não muito pelo menos).

    
por 20.01.2014 / 19:22
0

Se você usa a linha de comando do TCMD, é super fácil:

global if exist "Bad File.txt" del "Bad File.txt"

Isso é mais rápido do que del /s . Eu estimaria 100X para um disco rígido com alguns milhares de pastas.

Você pode querer usar global /q se o desenho de cada nome de diretório atrasa as coisas. Eu sei que faz para mim, porque meu cartão está dirigindo 3 telas de 1080p.

    
por 19.08.2015 / 20:41