Я новичок в Bash, но я хотел бы создать скрипт, в котором я бы хотел, чтобы пользователь мог выбрать несколько вариантов из списка вариантов.
По сути, я хотел бы что-то похожее на пример ниже:
#!/bin/bash
OPTIONS="Hello Quit"
select opt in $OPTIONS; do
if [ "$opt" = "Quit" ]; then
echo done
exit
elif [ "$opt" = "Hello" ]; then
echo Hello World
else
clear
echo bad option
fi
done
(Источник: http://www.faqs.org/docs/Linux-HOWTO/Bash-Prog-Intro-HOWTO.html#ss9.1 )
Однако в моем сценарии было бы больше опций, и я бы хотел, чтобы были выбраны кратные числа. Так что-то вроде этого:
1) Вариант 1
2) Вариант 2
3) Вариант 3
4) Вариант 4
5) Готово
Было бы замечательно иметь отзывы о тех, кого они выбрали, например, плюсики рядом с теми, которые они уже выбрали. Например, если вы выберете «1», я бы хотел, чтобы страницу очистили и перепечатали:
1) Option 1 +
2) Option 2
3) Option 3
4) Option 4
5) Done
Затем, если вы выберете «3»:
1) Option 1 +
2) Option 2
3) Option 3 +
4) Option 4
5) Done
Кроме того, если они снова выбрали (1), я бы хотел, чтобы он отменил выбор опции:
1) Option 1
2) Option 2
3) Option 3 +
4) Option 4
5) Done
И наконец, когда нажата кнопка «Готово», я бы хотел, чтобы список тех, которые были выбраны, отображался до выхода из программы, например, если текущее состояние:
1) Option 1
2) Option 2 +
3) Option 3 +
4) Option 4 +
5) Done
Нажатие 5 должно напечатать:
Option 2, Option 3, Option 4
... и сценарий завершается.
Итак, мой вопрос - возможно ли это в bash, и если да, то может ли кто-нибудь предоставить пример кода?
Любые советы будут высоко ценится.