I just realised, if you leave the renamed files where they are, the next time you run the batch (e.g. the enxt or a later day) then they will get caught and processed because they still have a .txt extension, so why not make a sub folder named for the date and move them there?
@echo off
setlocal enabledelayedexpansion
REM get MM, DD and YYYY independent of system date format settings
echo Wscript.echo ^(DatePart^("YYYY", Date^)^)>DateYear.vbs
echo Wscript.echo ^(DatePart^("M", Date^)^)>DateMonth.vbs
echo Wscript.echo ^(DatePart^("D", Date^)^)>DateDay.vbs
for /f %%A in ('DateYear.vbs //nologo') do set /a yyyy=%%A
for /f %%A in ('DateMonth.vbs //nologo') do set /a mm=%%A
for /f %%A in ('DateDay.vbs //nologo') do set /a dd=%%A
del DateYear.vbs
del DateMonth.vbs
del DateDay.vbs
REM add leading zero to single digit numbers
if %mm% LSS 10 set mm=0%mm%
if %dd% LSS 10 set dd=0%dd%
REM create date string in desired format
set DateString=%mm%%dd%%yyyy%
REM use date string for folder name
set DirName=%DateString%
MEM In various lines below,
REM Remove ECHO *** when you are happy
REM create folder if it does not yet exist
if not exist %DirName% (
echo Creating folder %DirName%
ECHO *** MD %DirName%
)
REM if there are any text files in this folder
if exist *.txt (
Echo Found text files to process
REM get their names and process in this loop which follows
for /f "delims==" %%A in ('dir /b *.txt') do (
REM store filename
set oldname=%%A
REM create new name
set newname=%%~nA-%DateString%.txt
REM rename file
echo Renaming !oldname! to !newname!
ECHO *** ren "!oldname!" "!newname!"
REM if file does not exist in folder move it there
if not exist "%DirName%\!newname!" (
echo Moving !newname! to %DirName%
ECHO *** move "!newname!" %DirName%
)
)
)