Batch Befehle Verknüpfen oder nach wahr\falsch Bedingung ausführen if else - Batch Befehle Verknüpfen oder nach wahr\falsch Bedingung ausführen. Auch die Verwendung von If else ist in Batch möglich - CMD Befehle Übersicht
Batch Befehle lassen sich auch hintereinander schreiben oder verknüpfen.
Folgendes ergibt vielleicht nicht viel Sinn, zeigt aber dass sich Befehle ganz einfach mit dem & Zeichen verbinden lassen.
1 |
dir & echo Hallo & dir |
Um etwas genauer auf diese Thematik einzugehen verwenden wir die nächste Verknüpfungsmöglichkeit &&, der nachfolgende Befehl soll nur ausgeführt werden wenn der vorangegangene Befehl wahr ist.
1 2 3 |
@echo off dir c:\ && echo Pfad gefunden pause |
Würden wir diese Zeilen in einer Batchdatei ausführen und das Verzeichnis C: existiert, würde der dir Befehl ohne Fehler ausgeführt, die Aktion wäre also wahr und der Befehl nach dem && Zeichen würde ausgeführt werden.
Was wir jetzt noch benötigen ist die Möglichkeit auf falsch abzufragen. Dafür gibt es das doppelte Pipe || Zeichen.
1 2 3 |
@echo off dir R:\ || echo Pfad nicht gefunden pause |
Vorausgesetzt es existiert wirklich kein R Laufwerk würde der Befehl folgende Ausgabe erzeugen.
Möchte man aber auf beide Ereignisse reagieren können, ist es ebenfalls in einer Zeile möglich.
1 2 3 |
@echo off dir c:\ && echo Pfad gefunden || echo Pfad nicht gefunden pause |
oder den Errorlevel abzufragen.
1 2 3 4 5 |
@echo off dir R:\ if %errorlevel%==0 echo Pfad gefunden if %errorlevel%==1 echo Pfad nicht gefunden pause |
Eine bessere Beschreibung zum Errorlevel findet man im Grundlagentutorial.
Batch, CMD Scripting Grundlagen unter Windows Tutorial Teil3
Auch die Verwendung von else ist möglich. Im vorherigen Beispiel würde das Script nur auf einen Errorlevel von 0 oder 1 reagieren, im Folgenden auf 0 oder alles andere.
1 2 3 4 5 6 7 8 |
@echo off dir R:\ if %errorlevel%==0 ( echo Pfad gefunden ) else ( echo Pfad nicht gefunden ) pause |