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:
Wie ließe sich das mit einer Batch realisieren?
Danke für eure Hilfe!
Grüße
bengun
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
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 242852
Url: https://administrator.de/contentid/242852
Ausgedruckt am: 21.11.2024 um 23:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo bengun!
Etwa so:
Grüße
bastla
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
bastla