Boucle which

Boucle which - Shell/Batch - Programmation

Marsh Posté le 10-06-2008 à 14:14:39    

Bonjour,
 
Est ce que vous allez bien ?
Voici mon problème (enfin c'est surtout le manque de café mon probème mais bon ...)
Sur certaines de mes machines les bin mysql ne sont pas dans le path.
Je cherche un algo en bash qui vérifie si mysql est connu
 si oui il mémorise le path
 si non il demande le path à l'usager puis le vérifie a nouveau, si ce path n'est pas correct alors nouvelle demande etc.
 
Je crois avoir trouvé la boucle mais lorqu'il est connu, je ne vois pas comment eviter la boucle :s

Code :
  1. which mysql  2>&1 > /dev/null
  2. while [ $? -ne 0 ]; do
  3. echo -n "Path pour mysql ? "
  4. read mysql_path
  5. test -e $mysql_path
  6. done


 
Un avis éclairé ?
 
Merci


Message édité par Elmoricq le 10-06-2008 à 14:24:06
Reply

Marsh Posté le 10-06-2008 à 14:14:39   

Reply

Marsh Posté le 10-06-2008 à 17:21:17    

Ah bah le café aidant :D
 
unset MYSQL
which mysql > /dev/null 2>&1
 
if [ $? -eq 0 ]; then
  MYSQL=$(which mysql)
else
  while [ -z $MYSQL ]; do
    echo -e "${ROUGE}/!\\ ${NORMAL}Le binaire de mysql est introuvable"
    echo -ne "${BLANCLAIR}Spécifiez le chemin complet (/usr/.../mysql) : ${NORMAL}"
    read SQL
    test -e $SQL
    if [ $? -eq 0 ]; then
      MYSQL=$SQL
    fi
  done
fi

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed