Ich habe keine Möglichkeit gefunden, den Fehlercode von rmdir zu erhalten. Es scheint, als ob die internen MS-DOS-Befehle keinen Fehlercode zurückgeben. Kann das jemand bestätigen?
Wie weiß ein Skript, das diese Befehle verwendet, ob die Befehle erfolgreich sind oder nicht, um den nächsten Schritt zu entscheiden? Der einfachste Weg ist, ihren Rückgabecode zu lesen, wenn er zurückgegeben wird.
Vielen Dank im Voraus.
Nein, scheint es nicht zu sein. Wenn Sie echo %errorlevel%
nach einem erfolgreichen oder fehlgeschlagenen rmdir
haben, erhalten Sie in beiden Fällen 0
:
Für diesen Anwendungsfall particular sollten Sie das Verzeichnisexperiment nachher am besten überprüfen:
%Vor% Interessanterweise können Sie, wenn Sie eine separate Kopie von cmd.exe
aufrufen, um die Operation auszuführen, die Fehlerstufe erhalten:
Ich bin jedoch nicht davon überzeugt, dass das besser ist, als einfach zu überprüfen, dass das Verzeichnis verschwunden ist, nachdem Sie es entfernt haben, da Sie einen ganz neuen Befehlsinterpreter starten müssen.
Sie tun, es ist nur schwer, die Dokumente für bestimmte Befehle zu finden, aber hier ist der Beweis dafür, dass rmdir
(was laut MS-Dokumentation hier gibt keine Exit-Codes zurück) setzt eigentlich den Exit-Code :
Die Ausgabe wird 2
sein, wenn das Verzeichnis nicht existiert, es gibt andere Codes für Erlaubnisprobleme, etc.
Tags und Links batch-file dos windows-scripting