como posso obter um arquivo em lote para excluir uma pasta se ela não contiver um arquivo específico

1

Oi eu sou novo aqui e estava esperando que alguém possa me ajudar com um problema que tenho. Ao longo dos anos, adquiri vários e-books (vários milhares). Então, decidi manter apenas meus livros mobi e Epub. No entanto, o problema que tenho é que algumas das pastas do ebook agora têm apenas arquivos de metadados .opf e imagens .jpg. Não posso fazer uma pesquisa geral da extensão de arquivo .epub. O que eu quero fazer é ter um arquivo de lote que vai passar pela minha pasta e olhar para ver se um arquivo epub está na pasta e se não excluir a pasta.

Eu tentei o seguinte script em um teste, mas o problema com isso é que ele olha primeiro para a pasta de primeiro nível e se ele tiver apenas sub pastas dentro dele, ele excluirá a pasta e todas as pastas subseqüentes

Alguém pode me ajudar, quer me dando dicas de como posso olhar o arquivo de baixo para cima. Outra maneira talvez de remover todas as pastas que contenham um epub para outro arquivo e qualquer coisa que tenha sido excluída

o script abaixo é o que estou usando

echo off
setlocal enableDelayedExpansion
for /f "tokens=* delims=" %%i in ('dir /a:d /b /s x:ebookstest') do (
  set _dir=%%i
  if exist !_dir!\*.epub (
    echo !_dir! folder is ok
    ) else (
    echo rd !_dir! get rid of folder
    )
  )
exit /b
    
por Darren Gilbey 08.05.2016 / 01:01

0 respostas