Nå, jeg fik det færdigt.
Den laver to filer:
MappelistDato.txt der indeholder alle filnavne sorteret efter dato, ældst først
MappelistNavn.txt der indeholder alle filnavne sorteret efter Navn
Du kan ændre deres navn og placering med:
Set DatoFil=MappelistDato.txt
Set NavneFil=MappelistNavn.txt
Du kan sætte dine cd kommandoer ind i toppen, efter @echo off
--- Resten er koden ---
@echo off
setlocal
set TmpFile1="%temp%\mappelst1.tmp"
set TmpFile2="%temp%\mappelst2.tmp"
set TmpFile3="%temp%\mappelst3.tmp"
Set DatoFil=MappelistDato.txt
Set NavneFil=MappelistNavn.txt
if exist %TmpFile1% del %TmpFile1%
if exist %TmpFile2% del %TmpFile2%
if exist %TmpFile3% del %TmpFile3%
if exist %DatoFil% del %DatoFil%
if exist %NavneFil% del %NavneFil%
for /F "delims=;" %%I in ('dir /S /B /AD') do call :Process1 %%~tI "%%I"
sort %TmpFile1%>%TmpFile2%
for /F "tokens=1,2,3,4,*" %%A in (%TmpFile2:"=%) do echo %%C-%%B-%%A %%D %%~E>>%DatoFil%
sort %TmpFile3%>%TmpFile2%
for /F "tokens=1,2 delims=;" %%A in (%TmpFile2:"=%) do @echo %%B%%~A>>%NavneFil%
goto :eof
:Process1
set Dato=%1
set tid=%2
set Name=%~3
for /F "tokens=1,2,3 delims=-" %%A in ("%Dato%") do (
set Aar=%%C
set Maaned=%%B
set Dag=%%A
)
echo %Aar% %Maaned% %Dag% %Tid% %Name%>>%TmpFile1%
echo "%Name%";%Dato% %Tid% >>%TmpFile3%
goto :eof