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 :

mise à jour d'une variable


Sujet :

Shell et commandes GNU

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 471
    Points
    19 471
    Par défaut mise à jour d'une variable
    Bonjour,

    Au début d'un script, j'assigne une variable qui contient une autre variable, qui sera définie plus loin dans le script.
    Mais, quand j'appelle la première variable, la seconde n'apparait pas.

    En gros :
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    text="bla $var bla"
    var=12
    echo "$text"
    bla  bla
    Y a-t-il une solution, ou sommes-nous contraint d'assigner les variables dans l'ordre (contenu ... contenant) ?

  2. #2
    Membre habitué Avatar de emprex
    Homme Profil pro
    auto-entrepreneur
    Inscrit en
    Octobre 2007
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : auto-entrepreneur
    Secteur : Services à domicile

    Informations forums :
    Inscription : Octobre 2007
    Messages : 219
    Points : 199
    Points
    199
    Par défaut
    Les commandes d'un shell sont exécutées les unes après les autres.
    tu es donc obligé de passer les instructions dans l'ordre.
    declarer la variable, puis utiliser la variable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #!/bin/bash
    # vari
    var=12
    text="bla $var bla"
    echo $text
    #
    Un peu comme en C

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 471
    Points
    19 471
    Par défaut
    Bon, tant pis.

    Merci, emprex.

    J'espérais une commande "magique", ou une procédure qui aurait permis de faire ça...

    À défaut de mieux, je peux toujours utiliser une fonction :
    Code bash : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    rappel() {
    echo "bla $var bla"
    }
    var=12
    rappel
    bla 12 bla
    ...
    ?

    mais je ne trouve pas ça super.

  4. #4
    Membre habitué Avatar de emprex
    Homme Profil pro
    auto-entrepreneur
    Inscrit en
    Octobre 2007
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : auto-entrepreneur
    Secteur : Services à domicile

    Informations forums :
    Inscription : Octobre 2007
    Messages : 219
    Points : 199
    Points
    199
    Par défaut
    Il existe sans doute une combine pour le faire. Mais je pense qu'il faut rester simple. La fonction permet d'envisager une réutilisation, C'est quand même pas mal

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mai 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 35
    Points : 36
    Points
    36
    Par défaut
    Salut

    je crois qu'une variable d'environnement peut faire l'affaire, mais il faut faire un export la première fois avant de l'assigner à une autre variable

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 471
    Points
    19 471
    Par défaut
    Pour autant que j'ai essayé, cela n'a pas davantage fonctionné
    ...
    ?

  7. #7
    Membre éprouvé
    Avatar de matrix788
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    740
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 740
    Points : 1 056
    Points
    1 056
    Billets dans le blog
    2
    Par défaut
    je ne comprends pas l'intérêt à déclarer une variable statique après son utilisation : aucun language ne propose cela à ma connaissance.

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 587
    Points : 19 471
    Points
    19 471
    Par défaut
    C'est très égoïstement pour mon confort personnel : je préfère déclarer ce type de variables au début des scripts (ça me fait suer de courir au long du script pour retrouver le texte à éventuellemnet modifier) .

    En fait, quand j'ai commencé ce script, la première variable ne devait pas en contenir d'autres. Mais, à l'usage, il s'est avéré qu'une donnée devait y figurer. J'ai donc simplement ajouter cette deuxième variable dans la première et...badaboum... ça n'a pas fonctionné : la deuxième variable n'est pas apparue!

    Ce n'est qu'en écrivant ma première réponse à emprex, que j'ai pensé à utiliser une fonction.

    Merci à tous les intervenants.

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

Discussions similaires

  1. [AJAX] Mise à jour d'une variable
    Par JLC83 dans le forum AJAX
    Réponses: 4
    Dernier message: 15/09/2010, 10h22
  2. mise à jour d'une variable
    Par bil_home dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 17/07/2009, 15h09
  3. Réponses: 4
    Dernier message: 21/11/2008, 16h02
  4. Mise à jour d'une variable après choix dans une combobox
    Par ~Brouette~ dans le forum Langage
    Réponses: 1
    Dernier message: 21/12/2007, 11h09
  5. Problème de mise à jour d'une variable
    Par Claire07 dans le forum Access
    Réponses: 2
    Dernier message: 19/06/2006, 21h40

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