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 :

[Script Bash] Condition et boucle


Sujet :

Shell et commandes GNU

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Mars 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2017
    Messages : 15
    Points : 19
    Points
    19
    Par défaut [Script Bash] Condition et boucle
    Bonjour,

    je souhaiterais réaliser le script suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    #!/bin/bash
     
    while [ -z $name ]
    do
            read -p 'name repo : ' name
    done
     
    while [ -z $nbteam ]
    do
            read -p 'number of teameats: ' nbteam
    done
     
    if [ $nbteam > 0 ]
    then
            while [ -z $nameTeam ] && [ $i != $nbteam ]
            do
                    read -p "name teamates : " nameTeam
                    i += 1
            done
    fi
    mais j'ai une erreur au 3eme while et je ne comprend pas pourquoi

    ./workspace_prepare.sh: line 15: [: !=: unary operator expected

    merci.

  2. #2
    Expert éminent sénior Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 276
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 276
    Points : 12 717
    Points
    12 717
    Par défaut
    Beaucoup d'erreurs dans ce script, dont en voici quelques unes:

    -Protéger l'appel de variable par des guillemets
    -les options != < > sont pour des chaines, pour les numériques on a -eq -lt -gt
    -Tu travailles avec une variable $i non initialisée...
    Cordialement.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Mars 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2017
    Messages : 15
    Points : 19
    Points
    19
    Par défaut
    merci j'ai donc changer des choses dans le script suivant(désolé pour ses questions bête je suis vrm un débutant)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    i=0
    while [ -z $name ]
    do
            read -p 'name repo : ' name
    done
     
    while [ -z $nbteam ]
    do
            read -p 'number of teameats: ' nbteam
    done
     
    if [ $nbteam -gt 0 ]
    then
            while [ -z $nameTeam ] && [ $i -ne $nbteam ]
            do
                    read -p "name teamates : " nameTeam
                    i=i+1
            done
    fi
    la premiere chose est que je ne comprend se que vous voulez dire par l'utilisation des guillemets.
    Puis j'ai une erreur au moment de l'incrémentation du i je pense donc que cela a un rapport avec cette histoire de guillemets.

  4. #4
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    870
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 870
    Points : 1 522
    Points
    1 522
    Billets dans le blog
    4
    Par défaut
    Bonjour,
    Pour les guillemets ---> "$var"
    Pour une addition ----> ((i=i+1))
    ou let "i=i+1"
    ou let "i+=1"
    #Rien de nouveau sous le soleil, tout est vanité comme courir après le vent!
    Developpement pour Android avec Python3/Kivy/Buildozer

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

    Informations forums :
    Inscription : Février 2008
    Messages : 7 549
    Points : 19 377
    Points
    19 377
    Par défaut
    pour une addition incrémentation
    .
    N'oubliez pas de consulter les cours shell, la FAQ, et les pages man.

  6. #6
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    870
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 870
    Points : 1 522
    Points
    1 522
    Billets dans le blog
    4
    Par défaut
    en effet
    #Rien de nouveau sous le soleil, tout est vanité comme courir après le vent!
    Developpement pour Android avec Python3/Kivy/Buildozer

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

Discussions similaires

  1. Script bash avec des variables mysql en boucle
    Par lorenzo8769 dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 02/11/2015, 21h24
  2. Récupération de données boucle (Script Bash)
    Par minka dans le forum Shell et commandes POSIX
    Réponses: 12
    Dernier message: 11/03/2015, 16h07
  3. Réponses: 3
    Dernier message: 15/10/2013, 00h30
  4. Script bash - boucle lecture arguments
    Par jffskyx dans le forum Shell et commandes GNU
    Réponses: 11
    Dernier message: 16/09/2011, 08h13
  5. Script Bash et condition date
    Par pcsystemd dans le forum Shell et commandes GNU
    Réponses: 0
    Dernier message: 28/04/2008, 11h00

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