Zählschleife will nicht
hi,
ich hab versucht eine zählschleife zu gestallten nach der hilfeanweisung vom windows-shell, jedoch meckert das programm jedesmal die variable an, das die nicht verarbeitbar wäre...
sinn ist, die letze PDf datei aus einem verzeichnis in eine variable zu pressen und dann das ".pdf" abzuschneiden. Dann soll die zählschleife von einem start wert immer 50 aufzählen bis der endwert erreicht ist.
Jemand eine idee warum die zählschleife nicht geht?
ich hab versucht eine zählschleife zu gestallten nach der hilfeanweisung vom windows-shell, jedoch meckert das programm jedesmal die variable an, das die nicht verarbeitbar wäre...
sinn ist, die letze PDf datei aus einem verzeichnis in eine variable zu pressen und dann das ".pdf" abzuschneiden. Dann soll die zählschleife von einem start wert immer 50 aufzählen bis der endwert erreicht ist.
Jemand eine idee warum die zählschleife nicht geht?
@ECHO OFF
Setlocal EnableExtensions
setlocal EnableDelayedExpansion
for %%i in (*.pdf) do (
set "datei=%%i"
)
IF %datei:~-3,1% EQU p (
SET "datei=%datei:~-4%"
)
for /L %j in (82325003, 50, !datei!) do (
set "datei2=!datei2!.pdf" >> "123.txt"
)
pause
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 66675
Url: https://administrator.de/forum/zaehlschleife-will-nicht-66675.html
Ausgedruckt am: 18.04.2025 um 19:04 Uhr
6 Kommentare
Neuester Kommentar
Hallo ooAlbert!
Wenn Dein Ziel zunächst sein sollte, aus allen pdf-Dateien des Verzeichnisses diejenige mit der höchsten Nummer herauszufiltern und deren Nummer in die Variable %datei% zu schreiben, könntest Du etwa so vorgehen (ich setze voraus, dass alle pdf-Dateien tatsächlich eine Nummer als Namen haben):
Die Zählschleife könnte dann so aussehen:
Was diese Schleife bewirken soll, ist mir allerdings nicht klar - vielleicht beschreibst Du die eigentliche Zielsetzung einmal etwas genauer ...
Grüße
bastla
Wenn Dein Ziel zunächst sein sollte, aus allen pdf-Dateien des Verzeichnisses diejenige mit der höchsten Nummer herauszufiltern und deren Nummer in die Variable %datei% zu schreiben, könntest Du etwa so vorgehen (ich setze voraus, dass alle pdf-Dateien tatsächlich eine Nummer als Namen haben):
for /f %%i in ('dir /b /on *.pdf') do set /a datei=%%~ni
for /L %%j in (82325003, 50, %datei%) do echo %%j
Grüße
bastla