Comment sortir d'un programme de commandes à l'erreur?

J'ai un fichier de commandes qui fait plusieurs choses. Si l'un d'eux échoue, je veux quitter le programme. Par exemple:

@echo off
type foo.txt 2>> error.txt >> success.txt
mkdir bob

Si le fichier foo.txt n'est pas trouvé, alors je veux le stderr message ajouté à la error.txt fichier, sinon le contenu de foo.txt est annexé à la success.txt. En gros, si le type de commande retourne une stderr alors je veux que le fichier de commandes de sortie et ne pas créer un nouveau répertoire. Comment pouvez-vous dire si une erreur s'est produite et de décider si vous avez besoin de continuer à la prochaine commande ou pas?

J'ai ajouté le code SI PAS ERRORLEVEL 0 EXIT /B echo %errorlevel% avant la mkdir bob commande, mais quelle que soit la valeur de la variable ERRORLEVEL (c'est à dire 0 ou 1), le répertoire est créé quand même. Donc, fondamentalement, ERRORLEVEL est définie avec une valeur différente si le type de commande trouve le fichier ou pas, mais le programme ne se ferme pas. Pensées?

OriginalL'auteur Notorious2tall | 2010-07-21