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

Linux Discussion :

le "$$i" ça marche pas


Sujet :

Linux

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Par défaut le "$$i" ça marche pas
    bonjour,

    SVP, je veux faire la somme des paramètres en utilisant le "for". voici le code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    s=0
    for i in `seq 1 $#`;do
    s=`expr $s + $[$i]`
    done
    j'ai essayé toutes les possibilités $$i, $($i),$[$i] mais en vain

    merci bien
    bonne journée à tous

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Quel est le problème exactement?

    Quel résultat souhaites-tu obtenir? Un exemple concret?

  3. #3
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Par défaut
    Bonjour,

    merci de nous indiquer egalement quel shell tu souhiates utiliser. Ils n'ont pas tous les memes possibilites, ou la meme syntaxe.
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  4. #4
    Membre confirmé
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Par défaut
    bonjour,

    j'utilise le bash.
    ce que je veux, c'est calculer la somme des parametres.
    et ce que je veux dire par $$i c'est en fait $1 pour i=1

    merci bien

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re,

    tu n'as pas besoin de faire aussi compliqué. Voici l'exemple de code modifié. Il reste juste à vérifier si la valeur passée en arguements est bien un chiffre.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    [sshuser@mvts2 ~]$ cat test.sh
    #!/bin/bash
    s=0
    for i in "$@" ;do
    s=`expr $s + $i`
    done
     
    echo "Somme:" $s
     
    [sshuser@mvts2 ~]$ ./test.sh 1 2 3 2 1
    Somme: 9

  6. #6
    Membre confirmé
    Inscrit en
    Décembre 2008
    Messages
    163
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 163
    Par défaut
    oui merci, je connais cette solution.
    mais mon problème, pourquoi le $$i ça marche pas, pourquoi elle me donne pas la valeur du paramètre dont l'indice correspond à $i

    merci

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