[Решено]не работает выход в общее меню

Ответить
banzay242
Сообщения: 904
Зарегистрирован: 18 авг 2017, 10:50
Operating system: MATE в релизе R10
Откуда: Уфа Омск

[Решено]не работает выход в общее меню

Сообщение banzay242 » 14 окт 2021, 07:31

Скрипт такой:
#!/bin/bash
function menu() {
echo -e "
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
| 1.) test1 2.) test2 |
| 3.) test3 4.) test4 |
| 5.) Quit |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#\n"
read -e -p "Select menu: " menu
if [ "$menu" == "1" ]; then
echo "echo test1..."
echo test
elif [ "$menu" == "2" ]; then
echo "echo test2..."
echo test
elif [ "$menu" == "3" ]; then
echo "echo test3..."
echo test
elif [ "$menu" == "4" ]; then
echo "echo test4..."
echo test
elif [ "$menu" == "4" ]; then
clear && exit 0
else
echo "Please select 1, 2, 3, 4, or 5." && sleep 3
clear && menu
fi
}
menu

Все работает но при завершении команды не выходит в общее меню
не работает похоже:
else
echo "Please select 1, 2, 3, 4, or 5." && sleep 3
clear && menu
Как побороть? Благодарю за ответы.
Последний раз редактировалось banzay242 15 окт 2021, 07:58, всего редактировалось 1 раз.

va9(2)
Сообщения: 796
Зарегистрирован: 20 окт 2015, 08:06
Operating system: RF.KDE5.2021.1.x86_64

не работает выход в общее меню

Сообщение va9(2) » 14 окт 2021, 12:23

Меню выводится если введен любой символ окромя цифр от 1 до 5.

Здесь будет выводится пока не введешь пятерку:

Код: Выделить всё

function menu() {
echo -e "
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
| 1.) test1 2.) test2 |
| 3.) test3 4.) test4 |
| 5.) Quit |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#\n"
read -e -p "Select menu: " menu
if [ "$menu" == "1" ]; then
echo "echo test1..."
echo test
elif [ "$menu" == "2" ]; then
echo "echo test2..."
echo test
elif [ "$menu" == "3" ]; then
echo "echo test3..."
echo test
elif [ "$menu" == "4" ]; then
echo "echo test4..."
echo test
elif [ "$menu" == "5" ]; then
clear && exit 0
fi
echo "Please select 1, 2, 3, 4, or 5." && sleep 3
clear && menu
}
menu
$ - команда должна быть выполнена от имени непривилегированного пользователя,
# - команда должна быть выполнена от имени суперпользователя.

banzay242
Сообщения: 904
Зарегистрирован: 18 авг 2017, 10:50
Operating system: MATE в релизе R10
Откуда: Уфа Омск

не работает выход в общее меню

Сообщение banzay242 » 15 окт 2021, 06:24

va9(2) писал(а):
14 окт 2021, 12:23
Меню выводится если введен любой символ окромя цифр от 1 до 5.

Благодарю! Работает.

banzay242
Сообщения: 904
Зарегистрирован: 18 авг 2017, 10:50
Operating system: MATE в релизе R10
Откуда: Уфа Омск

[Решено]не работает выход в общее меню

Сообщение banzay242 » 15 окт 2021, 07:50

Упростил и все работает, благодарю.
Упрощенный вид:
#!/bin/bash
function menu() {
echo -e "
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#
| 1) test 2) test 5) Quit |
| 3) test 4) test |
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~#\n"
read -e -p "Select menu: " menu
if [ "$menu" == "1" ]; then
echo test1
elif [ "$menu" == "2" ]; then
echo test2
elif [ "$menu" == "3" ]; then
echo test3
elif [ "$menu" == "4" ]; then
echo test4
elif [ "$menu" == "5" ]; then
clear && exit 0
fi
sleep 3
menu
}
menu

Ответить

Вернуться в «Общие вопросы по РОСЕ»