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 POSIX Discussion :

Retrouver la valeur d'une variable. [SH]


Sujet :

Shell et commandes POSIX

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 161
    Points : 224
    Points
    224
    Par défaut Retrouver la valeur d'une variable.
    Bonjour à vous tous experts shell,


    Je débute sous la programmation sous Unix et j'ai besoin de vos lumières pour résoudre un petit problème :

    Le code suivant ne plante pas mais ne résoud pas la variable status.
    En effet, le script /product/sas94/config/Lev2/sas_status.sh crée une variable status et vaut 0,1 ou 2 suivant le cas.
    Le problème, est que la commande suivante, echo redirigé vers un fichier ne resoud pas la variable, j'ai donc

    A;;26/09/2014 au lieu de A;0;26/09/2014

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RepFic_ArretRel=/tmp
     
    /product/sas94/config/Lev2/sas.servers stop 
    sleep 180
    /product/sas94/config/Lev2/sas_status.sh
    echo "A;$status;$(date +%d/%m/%Y)">>$RepFic_ArretRel/lst_arret_relance_service.txt
    Cela marcherait si je mets la commande echo dans le script sas_status.sh mais je ne souhaite pas le faire, car potentiellement cette commande status peut être appelé dans d'autres scripts comme celui ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    RepFic_ArretRel=/tmp
     
    /product/sas94/config/Lev2/sas.servers start
    sleep 180
    /product/sas94/config/Lev2/sas_status.sh
    echo "R;$status;$(date +%d/%m/%Y)">>$RepFic_ArretRel/lst_arret_relance_service.txt
    MErci d'avance de votre retour.

  2. #2
    Modérateur
    Avatar de N_BaH
    Profil pro
    Inscrit en
    Février 2008
    Messages
    7 595
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 7 595
    Points : 19 480
    Points
    19 480
    Par défaut
    Bonjour,

    les variables créées dans un script demeurent propres à ce script, et donc, ne peuvent être utilisées dans le script "parent".

    il faudrait que le script "enfant" affiche les données de la variable, pour pouvoir les récupérer par une substitution de commande.

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 161
    Points : 224
    Points
    224
    Par défaut
    Merci du retour.

    Finalement, dans mon code sas_status, là ou la variable est calculée : je l'écris dans un fichier.
    Ce fichier est lu dans le script parent par une substitue de commande $(cat fichier).
    Je clos.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSL] Comment modifier la valeur d'une variable?
    Par sorcer1 dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 17/02/2010, 14h26
  2. récupération d'une valeur dans une variable
    Par jh0483 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 17/08/2005, 10h49
  3. Réponses: 2
    Dernier message: 16/08/2005, 10h43
  4. afficher dans une boite de dialogue la valeur d'une variable
    Par micknic dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 10/07/2005, 10h25
  5. Intercepter le changement de valeur d'une variable
    Par Captain_JS dans le forum C++Builder
    Réponses: 5
    Dernier message: 07/01/2005, 09h04

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