Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Korrigieren Sie testen Vorrang der Batchdatei ERRORLEVELs

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 39585
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Zusammenfassung
Wenn Sie mehrere IF ERRORLEVEL-Anweisungen in Batchdateien verwenden, ist die Reihenfolge in der die ERRORLEVELs numerisch geprüft werden wichtig. Die richtige Reihenfolge absteigend (höchster zu niedrigster Priorität). Diese Reihenfolge ist von der Art, die ERRORLEVELs getestet werden. IF-Bedingung wird auf TRUE festgelegt, wenn die ERRORLEVEL gleich oder größer als die ERRORLEVEL-Anzahl ist.
Weitere Informationen
Die folgenden Batch Dateifragment veranschaulicht dieses falsche Verhalten:
   rem (execute a program which returns an errorlevel of 0 or 1)   if errorlevel 0 goto ZERO   if errorlevel 1 goto ONE   goto END   :ZERO     echo a Zero was returned!     goto END   :ONE     echo a One was returned!   :END				
im obigen Beispiel wird immer auf die Bezeichnung "Null" unabhängig von Erfolg oder Fehler verzweigt. In diesem Beispiel würden ordnungsgemäß, wenn die ERRORLEVEL-Tests in absteigender Reihenfolge vorgenommen wurde.

Die richtige Möglichkeit, solche eine Batchdatei geschrieben ist wie folgt:
   rem (execute a program which returns an errorlevel of 0 or 1)   if errorlevel 1 goto ONE   if errorlevel 0 goto ZERO   goto END   :ZERO     echo a Zero was returned!     goto END   :ONE     echo a One was returned!   :END				
6.22 2.x-3.x 4.00 4.01 5.00 5.00a 6.00 6.20 \ * yeswin4

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 39585 – Letzte Überarbeitung: 12/04/2015 09:03:13 – Revision: 2.0

Microsoft MS-DOS 2.11 Standard Edition, Microsoft MS-DOS 3.1, Microsoft MS-DOS 3.2 Standard Edition, Microsoft MS-DOS 3.21 Standard Edition, Microsoft MS-DOS 3.3 Standard Edition, Microsoft MS-DOS 3.3a, Microsoft MS-DOS 4.0 Standard Edition, Microsoft MS-DOS 4.01 Standard Edition, Microsoft MS-DOS 5.0 Standard Edition, Microsoft MS-DOS 5.0a, Microsoft MS-DOS 6.0 Standard Edition, Microsoft MS-DOS 6.2 Standard Edition, Microsoft MS-DOS 6.21 Standard Edition, Microsoft MS-DOS 6.22 Standard Edition

  • kbnosurvey kbarchive kbmt KB39585 KbMtde
Feedback