BBAT BATCH ON-LINE
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Connexion

Récupérer mon mot de passe

Qui est en ligne ?
Il y a en tout 4 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 4 Invités

Aucun

Le record du nombre d'utilisateurs en ligne est de 76 le Ven 22 Nov 2024, 12:39
Derniers sujets
» [StackOverflow] Batch to Create video .srt Subtitles with right timing
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyVen 25 Déc 2015, 14:17 par Sachadee

» [devellopez] Formater une date en ligne Dos
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyVen 31 Juil 2015, 10:40 par Dylan Gadacha

» Un super Tuto Batch de IniTScreen
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyLun 08 Juin 2015, 12:16 par InitScreen

» Un code MATRIX sympa
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyDim 12 Avr 2015, 14:27 par Sachadee

» [BAT/EXE] DresolChange changer la sesolution de l´écran
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyMar 17 Mar 2015, 09:12 par Sachadee

» [EXE/bat] DpScript Código Delphi interpreter
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyJeu 12 Mar 2015, 15:48 par Sachadee

» Externo SaveDlg com 2 kb
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyDim 15 Fév 2015, 12:20 par Sachadee

» présentation
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyDim 15 Fév 2015, 12:14 par Sachadee

» [developpez.com] Transcodage fichier vidéo si fichier déposé
[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel EmptyMar 03 Fév 2015, 01:02 par Sachadee

Flux RSS



Flag Counter
Partenaires
Le deal à ne pas rater :
Smartphone Xiaomi 14 – 512 Go- 6,36″ 5G Double SIM à 599€
599 €
Voir le deal

[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel

Aller en bas

[BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel Empty [BAT]Tester si une commande à réussi ou échoué sans tester l'errorlevel

Message par Sachadee Lun 17 Juin 2013, 17:09

On peut tester de cette manière si une commande BAT a réussi ou échoué. Sans utiliser le test IF sur %errorlevel%


Code:
Votre_commande && (
  echo La commande c'est terminé avec succès
) || (
  echo La commande a echoué
)
Explication :

Le "&&" est un descripteur de commande conditionnel. La commande à droite est uniquement executé si
l' errorlevel est égal à 0 (pas d'erreur). On peut le mettre en cascade si désiré. De la même maniere le double pipe fais l'inverse. Il éxecute la commande sur la droite uniquement si l'errorlevel est supérieur à 0. Il est également utilisable en cascdade.

On comprend vite l'intèret de ces 2 descripteurs pour simplifier un code en évitant des tests "IF" à répetition.

Cela permet également de palier à certain comportement étrange de l'intèrepreteur de commande dans les cas de redirectionnement.

Exemple :

Si vous tapez cette commande :

Code:

type >nul C:\existe\pas\fichier.txt
Vous aurez une erreur du type: Le chemin d'accès spécifié est introuvable.
et si vous testez l'errorlevel

Code:

echo %errorlevel%
0

Il est à zero alors que la commande à échouée.

Pour palier à ce problème :

Code:

C:\>type nul > C:\existe\pas\ficjer.txt && echo ok || echo Echoué
Le chemin d'accès spécifié est introuvable.
Echoué

C:\>echo %errorlevel%
1

Ou si l'on veut juste setter l'errorlevel au delà de l'erreur de redirection :

Code:

type nul > C:\existe\pas\fichier.txt || rem

Et voilà !
Sachadee
Sachadee
Admin
Admin

Mensagens : 591
Data de inscrição : 04/06/2013

https://bbat.forumeiro.com

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum