briter
Goto Top

Batchdatei, Variable zählt in For-Schleife nicht hoch

Hallo, liebe Community!

Das ist sicher eine ganz dumme Frage, aber bei mir ist es schon so lange her mit der Batch-Programmierung. Ich möchte i in der FOR-Schleife hochzählen aber i bleibt immer 0. Für den Fall, dass das generell nicht geht, würde ich mich über eine Alternative sehr freuen.
Hier der Source-Code:

set i=0
FOR /f %%f IN (test.txt) DO (
echo %%f
echo %i%
if %i%==5 timeout 10
set /a i=i+1
)
pause
exit

Vielen Dank schon mal im Voraus!

Content-ID: 249789

Url: https://administrator.de/forum/batchdatei-variable-zaehlt-in-for-schleife-nicht-hoch-249789.html

Ausgedruckt am: 09.04.2025 um 05:04 Uhr

bastla
Lösung bastla 21.09.2014, aktualisiert am 23.09.2014 um 21:54:47 Uhr
Goto Top
Hallo briter und willkommen im Forum!

Dein Stichwort ist "delayedExpansion" - das sähe dann etwa so aus:
@echo off & setlocal enabledelayedexpansion
set /a i=0
FOR /f %%f IN (test.txt) DO (
    echo %%f
    echo !i!
    if !i!==5 timeout 10
    set /a i+=1
)
pause
Mehr dazu in Friemlers empfehlenswertem Tutorial zur FOR-Schleife ...

Grüße
bastla

[Edit] Zeile 5 angepasst [/Edit]
briter
briter 21.09.2014 um 21:56:34 Uhr
Goto Top
Hallo bastla!

Vielen, lieben Dank!! Es funktioniert.

Gruß,

briter
ITvortex
Lösung ITvortex 22.09.2014, aktualisiert am 23.09.2014 um 21:55:18 Uhr
Goto Top
Hey, bitte nicht vergessen: Wie kann ich einen Beitrag als gelöst markieren?

Gruß