Bonjour,

j'ai fais ce petit bout de code mais cela ne fonctionne pas comme je le voudrais.

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
22
23
24
25
26
27
28
29
30
31
32
33
34
RemplirTableau()
{
listemodules=( "$1" "${listemodules[@]}" )
}
 
FonctionModule()
{
IFS=$'\t\n'                                          # modification du séparateur
declare -a listemodules                              # déclaration du tableau
echo -e "\nMerci de lister les modules à ajouter en validant par la touche entrée à chaque ligne.\nPour terminer la liste mettre le mot Fin sur la derniere ligne"                                        # demande le nom du module
read module                                          # mets le module dans la variable module
while [ $module != "Fin" ]; do                       # tant que la variable ne vaut pas Fin
  recherchemod=$(grep $module ModOM);                # on recherche le nom du module dans le fichier ModOM
  if [ -z $recherchemod ]; then                      # if la recherche ne renvoi pas de résultat 
    echo -e "Ce module n'existe pas."                # info utilisateur
    exec $1                                        # retour à la ligne 96
  else
    RemplirTableau "$module"                         # sinon on ajoute le module dans la tableau
    exec $1                                        # on renvoi à la saisi de la liste 
  fi
done
}
 
if [ $modules == "o" ]; then                           # si il y a des modules
  FonctionModule
fi
 
# traiter les modules
if [ $modules == "o" ]; then
  echo "Mes modules :" >> data/C$id/common.yaml
  for i in ${listemodules[@]}; do
    echo -e "  - ${listemodules[i]}" >> data/C$id/common.yaml
  done
fi