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.
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?
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.