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 :

script shell (petit programme)


Sujet :

Linux

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 29
    Points : 10
    Points
    10
    Par défaut script shell (petit programme)
    bonjour à vous ts et ttes ,, s'il vous plait j'ai besoin de votre aide cioncernant un petit script shell que j'ai envi de realiser qui permet de par exemple :
    - quand je tape la commande ./programme a 1 2 3 4 m'affichera :
    a1
    a2
    a3
    a4

    --_-- Et Merciiiiiiiiiiiiiiiiiiiiiiiii --_--

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Points : 376
    Points
    376
    Par défaut
    $1 est ton premier argument, puis $2 ...

    donc pour ton exemple un simple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    echo $1$2
    echo $1$3
    echo $1$4
    echo $1$5
    fera l'affaire

    si tu veux gérer un nombre de paramètres de 2 à l'infini, tu fais une boucle selon ton nombre d'arguments ...

  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 29
    Points : 10
    Points
    10
    Par défaut
    Merci pour ta reponse ,mais comment pui-je faire une boucle for pour fixer le "a" et aficher successivement les a1 a2 a3 ...

    et Merci bcp --_--

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

    Tu as la variable spéciale @ qui reprend l'ensemble des paramètres que tu auras passé à ton programme. Ensuite tu utilises une boucle for ...in pour pourcourir chacun des arguments et les traiter.

    Voici un exemple de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    #!/bin/bash
    for argument in "$@"
    do
    echo a$argument
    done
    Résultat:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    [user@server ~]$ ./test.sh 1 2 3 4
    a1
    a2
    a3
    a4

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Mars 2009
    Messages : 31
    Points : 35
    Points
    35
    Par défaut
    Avec un shift en plus, ça devrait faire l'affaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #!/bin/bash
    prefix="$1"
    shift
    for argument in "$@"
    do
       echo $prefix$argument
    done

  6. #6
    Membre à l'essai
    Inscrit en
    Mars 2009
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 29
    Points : 10
    Points
    10
    Par défaut
    Merciiiiiiii bcp je vé l'essayer et je vais aussi faire une recherche concernant le shift car je suis encore debutant en programmation linux ,, en tous cas merci pour vos aide tous ---__---

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 552
    Points : 19 392
    Points
    19 392
    Par défaut
    ah !? remy72, tu as oublié un shift dans la boucle for, après le echo ...

    Sinon, euh......
    ?
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Points : 376
    Points
    376
    Par défaut
    je pense que le 1,2,3,4 était un exemple

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/11/2007, 14h16
  2. Script Shell qui lance un programme sur un ordi distant avec SSH
    Par bilibou dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 02/06/2007, 11h18
  3. Programmation crontab avec script shell
    Par burhud dans le forum Linux
    Réponses: 3
    Dernier message: 05/12/2006, 14h46
  4. Appel d'un programme C dans un script shell
    Par Spacy_green dans le forum Linux
    Réponses: 6
    Dernier message: 01/06/2006, 13h01
  5. Programme en C dans un script shell
    Par am.adnane dans le forum Linux
    Réponses: 1
    Dernier message: 05/02/2006, 17h57

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