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

Shell et commandes GNU Discussion :

comment exécuter un bash script à l'intérieur de ma classe java?


Sujet :

Shell et commandes GNU

  1. #1
    Candidat au Club
    Inscrit en
    Janvier 2007
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 5
    Points : 4
    Points
    4
    Par défaut comment exécuter un bash script à l'intérieur de ma classe java?
    bonjour,

    Voilà actuellement je suis en train d'écrire une classe java qui va logger des informations dans un fichier nommé "diagnostic.log".Cependant il est requis de démarrer une instance du server d'application Sun One via shell Script(unix).En résumé, j'ai écris un script shell qui va démarrer l'instance du server et il fonctionne bien.Mon problème est que je dois logger des infos dans le fameux fichier diagnostic.log mais pour cela je dois récupérer l'exit status renvoyé par mon script et le passer à ma classe java en argument afin de faire un test sur ce code renvoyé et de pouvoir logger en "info" si Exit_Code=0 et en "error" si Exit_Code=1. Quelqu'un m'a conseillé d'utiliser la classe Runtime qui permet de stocker dans un Process le getruntime.
    Voilà le script que je lance pour starter mon instance:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    bash Spine.Software.PSIS start psis01_instance
    comment récupérer dans ma classe java un paramètre de mon script en l'occurence ici "exit_code"?

    Si vous avez besoin d'infos je peux vous en donner plus
    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    java tourne dans une sandbox... rien ne dit que tu puisses faire un system() ou un exec()

  3. #3
    Candidat au Club
    Inscrit en
    Décembre 2004
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Depuis le temps, tu as du trouver, mais au cas où, regarde du côté des OutputStream

  4. #4
    Membre éprouvé

    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 116
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 116
    Points : 1 111
    Points
    1 111
    Par défaut
    C'est pas plutôt l'inverse normalement ? Appeler mon application java depuis un script shell ? Parce que là ça perd tout interêt. Je ne vais pas faire une citation, mais ... Normalement l'implémentation se fait du plus bas niveau vers le plus haut niveau (enfin je me comprends).
    Quand on veut monter (ou descendre), on évite les sinus.

Discussions similaires

  1. Exécution script shell à distance à travers une classe Java
    Par midoom dans le forum Général Java
    Réponses: 1
    Dernier message: 27/07/2012, 05h17
  2. Réponses: 1
    Dernier message: 04/05/2012, 14h49
  3. Réponses: 3
    Dernier message: 26/04/2012, 17h55
  4. Comment exécuter automatiquement un script.
    Par Loupinou dans le forum Langage
    Réponses: 3
    Dernier message: 22/01/2009, 17h33
  5. Comment exécuter automatiquement un script php toutes les 24h.
    Par legastu dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 12/06/2007, 16h25

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