windows - Batch File - Delete Files Based Off Number In File Name -


i have task assigned me know how other languages, windows batch/cmd requirement has me little baffled.

there directory several files:

  • filename0.txt
  • filename0-2014.txt
  • filename0-2013.txt
  • filename1.txt
  • filename1-2014.txt
  • filename1-2013.txt
  • filename2.txt
  • filename2-2014.txt
  • filename2-2013.txt

that same pattern might repeat way filename54.txt , on. keep in mind have simplified examples various reasons, format of names same.

essentially there main files (filename0.txt, filename1.txt, etc) , truncated files earlier (filename1-2014.txt, filename1-2013.txt, etc) , each set number can 0 whatever...highest i've seen 54 change.

what need have batch/cmd file keep filename0*.tx files, main files other number sequences (filename1.txt, filename2.txt, etc), , delete other truncated files of sequences other filename0 set.

i figured can focus on "-" after sequence number, delete filename1-*.txt, trying figure out systematic way make work sequences above 0 perplexing me.

thoughts/comments/examples?

@echo off setlocal %%a in (filenames*.txt) /f "tokens=1,2delims=-" %%s in ("%%a") if "%%t"=="" set "keep=%%~na"&goto nextstep :nextstep echo keep %keep%* %%a in (filenames*-*.txt) /f "tokens=1,2delims=-" %%s in ("%%a") if "%%s" neq "%keep%" echo del "%%a"  goto :eof 

the required del commands merely echoed testing purposes. after you've verified commands correct, change echo del del delete files.

(i've changed template filenames suit testing)


Comments

Popular posts from this blog

php - SPIP: From Tag directly to an article -

jquery - isAjaxRequest always return false -

ruby on rails - In a controller spec, how to find a specific tag in the generated view? -