einfache for Zählschleifen in Batch

Einfache Zählschleifen in Batch:

set /a loop=0

:install
set /a loop=%loop%+1
echo install %loop%
set installel=%errorlevel%
if %loop%==3 goto fehler
if %installel%==0 pause & goto install

:fehler
echo ### fehler ###

Der

echo install

Befehl wird 3 Mal ausgeführt und jedes Mal wird der Zähle loop nach der Ausführung um 1 erhöht. Wurde der Befehl das 3. Mal ausgeführt und erreicht erneut die

if %loop%==3

Abfrage so wird zu

:fehler

weitergeleitet.

3 Kommentare

  1. Cool, erinnert mich alles ein bisschen an Assembler 🙂

    Was ist eigentlich aus der PowerShell geworden? Ist die nicht ähnlich mächtig wie bash? Scheint sich irgendwie nicht so durchgesetzt zu haben, oder?

  2. PowerShell ist nicht ähnlich mächtig sondern um ein vielfaches mächtiger! Das ist aber auch viel eher eine Programmiersprache als Batch, da muss man sich also wirklich reinhängen.
    Warum sich das im Unternehmen (bei uns zumindest) nicht so richtig durchsetzt sind aber eher Einschränkungen bei der Nutzung. PowerShell mus auf allen Clients erst eingerichtet werden (XP -> installieren, aktivieren, und erlauben, Win7 -> aktivieren und erlauben), lassen sich nicht so leicht benutzen (kein Ausführen bei Doppelklick) und ähnliche Nervereien.
    Ich weiche also nur von Batch&vbs ab wenn die Aufgaben komplex genug sind, also z.B. Active Directory Kram.
    Aber auch das lässt sich mit CMD Tools wie csvde besser (oder korrekter gesagt: schneller auf jeden Fall) verscripten.

Schreibe einen Kommentar