Arrêter le script de commandes de l'exécution de en rencontrant d'erreur
Donc je suis en train de construire plusieurs client en utilisant le même script de commandes. Si il y a une erreur lors de la construction de l'un, que le processus s'arrête tout simplement et se poursuit avec le prochain. Parce qu'il y a beaucoup de sortie sur l'écran et je suis en train de faire d'autres choses, la plupart du temps je m'ennuie qu'il y a une erreur de compilation.
Est-il un moyen pour arrêter l'exécution des tâches suivantes si il y a une erreur, et afficher un message d'attirer mon attention? Ou au moins arrêter l'exécution, donc quand je reviens à la fenêtre de commande, je peux voir qu'il y avait un échec?
@echo off
if "%1"=="?" GOTO HELP
if NOT "%1"=="" set rev=%1
if NOT "%2"=="" set version=%2
@echo on
rem build one
call perl buildClient.pl -brandName="myBrand" -group="group1"
rem build two
call perl buildClient.pl -brandName="myBrand" -group="group2"
rem build three
call perl buildClient.pl -brandName="myBrand" -group="group3"
rem build four
call perl buildClient.pl -brandName="myBrand" -group="group4"
@echo off
goto EXIT
:HELP
cls
echo.
echo.
echo usage: buildbrand.bat [revision] [version] [group]
echo.
echo ? = this help screen
echo.
echo revision = build version
echo Example: 5.2.31
echo group = group of phones or phone name
echo Example: SonyEricsson\K750
echo.
:EXIT
set version=
set rev=
set brandName=
PAUSE
disons bâtiment groupe1 a échoué. J'ai envie de m'arrêter là et je me notifié plutôt que de continuer à traitement groupe2.
Je ne suis pas sûr à 100%, mais je pense que quelque chose comme
En perl donne un niveau d'erreur qui, je suppose qu'il ne l'est pas. Tony sortie donne-t-il en cas de panne?
En supposant que
double possible de Comment faire un fichier batch fin lors de la survenue d'une erreur?
Je ne suis pas sûr à 100%, mais je pense que quelque chose comme
call command arguments||echo The command failed && pause
devrait fonctionner.En perl donne un niveau d'erreur qui, je suppose qu'il ne l'est pas. Tony sortie donne-t-il en cas de panne?
En supposant que
perl
est un autre fichier de commandes, vous pouvez ajouter EXIT %errorlevel%
pour quitter le perl
fichier de commandes et de définir %ERRORLEVEL%
à la valeur que le compilateur perl retourné. Ensuite, vous pouvez vérifier %errorlevel%
après chaque call perl
pour voir si vous avez besoin de l'erreur...double possible de Comment faire un fichier batch fin lors de la survenue d'une erreur?
OriginalL'auteur Tony | 2013-03-05
Vous devez vous connecter pour publier un commentaire.
"Vérifier le niveau dans une instruction if, puis exit /b (sortie le fichier de commandes seulement, et non pas l'ensemble de la cmd.exe processus) pour les valeurs de 1 ou plus."
Voir ici pour les détails: Comment faire un fichier batch fin lors de la survenue d'une erreur?
OriginalL'auteur Rahul Kumar
La syntaxe correcte pour stopper l'exécution si l'erreur est:
OriginalL'auteur Alex
Juste un conseil, essayez d'utiliser
dans votre code. cela devrait sortie en cas d'erreur.
OriginalL'auteur Gaurav Kolarkar_InfoCepts