bengun
Goto Top

Die aktuellsten 10 Dateien (.jpg) aus einem Ordner in einer Textdatei auflisten via Batch

Hallo,

habe nun bereits die gesamte Administrator.de Seite durchsucht um eine Lösung für folgendes zu bekommen. Leider erfolglos.

Ziel ist es aus einem Ordner mit u.U. mehr als 5000 JPG Dateien die letzten 10 Dateien in einer Textdatei aufzulisten. Die Auflistung sollte in einer Zeile pro Datei mit vollständiger Pfadangabe erfolgen. Die jüngste Datei am Schluß (die Älteste der 10 dateien am Anfang). Eventuell kann die Anzahl von 10 noch variieren.

Also so ungefähr sollte es in dieser Textdatei aufgelistet werden:

c:\temp\01.jpg
c:\temp\02.jpg
c:\temp\03.jpg
c:\temp\04.jpg
c:\temp\05.jpg
c:\temp\06.jpg
c:\temp\07.jpg
c:\temp\08.jpg
c:\temp\09.jpg
c:\temp\10.jpg

Wie ließe sich das mit einer Batch realisieren?

Danke für eure Hilfe!
Grüße
bengun

Content-Key: 242852

Url: https://administrator.de/contentid/242852

Printed on: April 23, 2024 at 17:04 o'clock

Member: bastla
Solution bastla Jul 06, 2014 updated at 16:43:58 (UTC)
Goto Top
Hallo bengun!

Etwa so:
@echo off & setlocal
set "Ordner=c:\temp"  
set "Typ=jpg"  
set "Liste=c:\temp\latest10.txt"  
set /a Anzahl=10

set "TempListe=%temp%\jpg.tmp"  
del "%TempListe%" 2>nul  
del "%Liste%" 2>nul  

for /f "tokens=1* delims=:" %%i in ('dir /b/o-d "%Ordner%\*.%Typ%"^|findstr /ie ".%Typ%"^|findstr /n "^"') do if %%i leq %Anzahl% >>"%TempListe%" echo %%i:%Ordner%\%%j  
for /L %%a in (%Anzahl%,-1,1) do for /f "tokens=1* delims=:" %%i in ('findstr /b "%%a:" "%TempListe%"') do >>"%Liste%" echo %%j  
Grüße
bastla
Member: bengun
bengun Jul 06, 2014 at 16:43:35 (UTC)
Goto Top
Hallo bastla,

gerade ausprobiert und es hat funktioniert! Super! Vielen vielen Dank : )

Einen schönen Sonntagabend!

Grüße
bengun