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 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
#!/bin/bash
#Script qui fonctionne
#============================================
ligne=$(grep "Path: ")
liste_serveurs=${ligne#Path: }
while [ -n "$liste_serveurs" ]
do
serveur=${liste_serveurs%%\!*} # premier élement (le point d'exclamation est supp)
liste_serveurs=${liste_serveurs#$serveur} # on l'enlève de la liste
liste_serveurs=${liste_serveurs#\!} # on supprimer le point d'exclamation restant
echo $serveur
done
#============================================
#===========================================================================================
# POSSIBILITE D'AMÉLIORATION :
# faire de la ligne 7 et la ligne 8 une et une seule ligne
#===========================================================================================
<<commentaire
Première tentative :
==================
ligne=$(grep "Path: ")
liste_serveurs=${ligne#Path: }
while [ -n "$liste_serveurs" ]
do
serveur=${liste_serveurs%%\!*}
liste_serveurs=${liste_serveurs#${serveur}\!}
echo $serveur
done
Résultat :
Boucle infinie et affiche not-for-mail (le dernier élément de la liste)
==================
Deuxième tentative :
==================
ligne=$(grep "Path: ")
liste_serveurs=${ligne#Path: }
while [ -n "$liste_serveurs" ]
do
serveur=${liste_serveurs%%\!*}
liste_serveurs=${liste_serveurs#$\{serveur\}\!}
echo $serveur
done
Résultat :
Boucle infinie et affiche premier_serveur (le premier élément de la liste)
==================
commentaire |
Partager