Выбор сценария Bash в зависимости от значения - PullRequest
0 голосов
/ 17 мая 2019

У меня есть команда, которую я хотел бы запустить в терминале.

например.

samplecommand -s

Который предоставляет опцию позже:

  1. Вариант 1
  2. Вариант 2

с входным вопросом Пожалуйста, введите индекс:

Так что мне нужно было бы ввести 2 в терминал.

Однако порядок в Варианте 1 и Варианте 2 изменяется, что затрудняет жесткое кодирование определенного индекса.

например. это может быть:

  1. Вариант 2
  2. Вариант 1

Есть ли способ использовать контекст предоставленных опций и заставить скрипт выбирать только «Вариант 2».

1 Ответ

0 голосов
/ 17 мая 2019

Вы можете использовать se;ect:

> select: select NAME [in WORDS ... ;] do COMMANDS; done
>     The WORDS are expanded, generating a list of words.  The
>     set of expanded words is printed on the standard error, each
>     preceded by a number.  If `in WORDS' is not present, `in "$@"'
>     is assumed.  The PS3 prompt is then displayed and a line read
>     from the standard input.  If the line consists of the number
>     corresponding to one of the displayed words, then NAME is set
>     to that word.  If the line is empty, WORDS and the prompt are
>     redisplayed.  If EOF is read, the command completes.  Any other
>     value read causes NAME to be set to null.  The line read is saved
>     in the variable REPLY.  COMMANDS are executed after each selection
>     until a break command is executed.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...