IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

Récupérer un code d'erreur


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2011
    Messages
    756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 31
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2011
    Messages : 756
    Par défaut Récupérer un code d'erreur
    Bonjour,

    rien d'urgent car je pense avoir trouvé une solution de secours, mais j'aimerais tout de même savoir si c'est possible.


    J'exécute des scripts python avec des commandes batch depuis mon appli java.

    Il peut arriver que le python plante; et du coup j'ai des codes d'erreurs, sous la forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sys.exit(code_erreur)
    Ce qui me permet de savoir exactement ce qui a planté.

    Ce que j'aimerais faire, c'est pouvoir récupérer le code via le batch afin de pouvoir adapter mon traitement sur l'appli java.

    A l'heure actuelle, je vais probablement passer par l'écriture dans un fichier; mais si on pouvait stocker le résultat du py dans une variable batch directement, je pense que cela me simplifierait grandement la vie^^


    En gros dans mon java je vais avoir un truc de ce style

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String commande="python fichier.py"
    Launch l=new Launch(commande);
    l.exe(); //exécute la commande
    Où commande correspond au code batch que je lance dans mon cmd.
    Et j'aimerais avoir qqchose comme cela mais je ne sais pas si c'est possible.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String commande="codeRetour=python fichier.py"
    Launch l=new Launch(commande);
    l.exe(); //exécute la commande

  2. #2
    Membre Expert
    Avatar de sachadee
    Homme Profil pro
    AMI DU BAT
    Inscrit en
    Janvier 2013
    Messages
    1 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Brésil

    Informations professionnelles :
    Activité : AMI DU BAT
    Secteur : Distribution

    Informations forums :
    Inscription : Janvier 2013
    Messages : 1 478
    Par défaut
    salut,

    sys.exit (valeur) va te setter le %errorlevel% à [valeur]

    donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    @echo off
    python.exe ton_prog.py
    echo %errorlevel%
    suiant la valeur de %errorlevel% tu fais ce que tu veux.


Discussions similaires

  1. [PowerShell] Récupérer le code d'erreur de ncftpget
    Par skeleton18 dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 11/05/2011, 12h21
  2. [PowerShell] Comment récupérer le code d'erreur à la fin d'exécution d'une commande ?
    Par spynux dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 26/11/2010, 09h18
  3. récupérer le code d'erreur dans une procédure stockée MYSQL
    Par zephira dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 05/07/2008, 07h01
  4. Réponses: 3
    Dernier message: 22/02/2008, 15h02
  5. [Oracle][ADO_QRY] Récupérer le code d'erreur
    Par Cryonie dans le forum Bases de données
    Réponses: 4
    Dernier message: 04/06/2004, 13h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo