J'utilise GNU bash, version 4.3.46 sur une machine Ubuntu. Pour une raison quelconque, cette boucle while ne fonctionne pas comme prévu.
Le menu doit tourner en boucle jusqu'à ce que l'utilisateur décide de quitter le programme, puis il y a un contrôle d'erreur demandant à l'utilisateur s'il est sûr, puis le programme se termine.
Voici le code :
#!/bin/bash
menu_choice=0
quit_program="n"
while [[ $menu_choice -ne 3 && $quit_program != "y" ]]
do
printf "1. Backup\n"
printf "2. Display\n"
printf "3. Exit\n\n"
printf "Enter choice: \n"
read menu_choice
if [ $menu_choice -eq 3 ]
then
printf "Are you sure you want to quit? (y/n)\n"
read quit_program
fi
done
Je pense que cela peut être dû au fait que les variables globales sont déclarées au début et que je lis une nouvelle valeur localement...