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 :

Affecter une valeur aux arguments d'un shell


Sujet :

Shell et commandes GNU

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 158
    Points : 89
    Points
    89
    Par défaut Affecter une valeur aux arguments d'un shell
    Bonjour,

    Je voudrais savoir s'il est possible d'affecter une valeur aux arguments passés en paramètre d'un shell. En gros, s'il n'y a pas d'argument ${1}, je voudrais faire 1="TOTO", ce qui n'est pas possible écrit comme ça !

    Je veux faire ça car l'argument est utilisé un peu partout au lieu d'être récupéré dans une variable. Alors, je sais qu'il y a d'autres solutions, mais je suis aussi curieux de savoir comment faire ce truc.

    Merci d'avance

  2. #2
    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
    Citation Envoyé par apqmwnqmap Voir le message
    l'argument est utilisé un peu partout au lieu d'être récupéré dans une variable
    Bonjour,

    alors là je comprend pas... Si vous n'avez pas besoin d'arguments, pourquoi cherchez à en passer dans votre programme ? autant la fixer en la déclarant...

    sinon, si vous y tenez, vous pouvez vous diriger vers la commande de switch-case

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 158
    Points : 89
    Points
    89
    Par défaut
    En gros, le shell est fait pour tourner avec un argument mais je voudrais en définir un par défaut. Donc s'il n'y a pas de valeur, je voudrais en définir une. Et je ne veux pas passer par une variable intermédiaire car tous les sous-shell appelle aussi ${1} dans d'autres contextes.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 126
    Points : 142
    Points
    142
    Par défaut
    Oui, il faut faire un test pour savoir si ${1} est nul ou plutôt si il a la valeur "".

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 158
    Points : 89
    Points
    89
    Par défaut
    Ce que je veux c'est affecter une valeur à la variable "1", lire dedans c'est ok

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 158
    Points : 89
    Points
    89
    Par défaut
    J'ai la réponse. Il faut utiliser set.

    set a b c d ça donne :
    $1=a
    $2=b
    $3=c
    $4=d

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 584
    Points : 19 461
    Points
    19 461
    Par défaut
    regarde dans le man bash à Remplacement des paramètres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $ echo ${paramEtre:-mot}
    mot

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

Discussions similaires

  1. Affecter une valeur à un input type="file" ?
    Par rocs dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/08/2005, 11h10
  2. Affecter une valeur à un input type text
    Par mr.t dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 01/06/2005, 15h18
  3. Réponses: 4
    Dernier message: 07/04/2005, 13h37
  4. Affecter une valeur à un radiobutton svp
    Par bigfoot dans le forum Bases de données
    Réponses: 5
    Dernier message: 30/12/2004, 11h17
  5. [scriplet] affecter une valeur par un bean:write
    Par viena dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 25/11/2004, 16h29

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