Выбор параметров меню cli из моего сценария bash

Я запускаю сценарий bash, но процесс зависает, когда он попадает в меню, где ему нужно сделать выбор. Я понимаю, что для YES можно использовать -y в моих командах, но в случае, когда:

  1. Мне нужно выбрать/ввести число из списка вариантов

  2. Введите имя или адрес электронной почты

Как я могу это сделать?

Достаточно странно, что большинство результатов поиска возвращают, как создать меню с помощью bash, но не как заставить скрипт вводить выборки/значения.

бить

Тлинк

1 ответ
1

Вы можете просто отправить текст с ответами на команду:

printf "bot\nn\nJava" | ./questions.sh

Или используйте expect вот так:

#!/usr/bin/expect -f

set timeout -1
spawn ../4/questions.sh

expect "Your name: "
send -- "expect\n"

expect "Are you human?\r
y/n: "
send -- "n\r"

expect "What is your favorite programming language?\r
Your answer: "
send -- "Java\r"

expect eof

больше информации здесь
https://www.baeldung.com/linux/bash-interactive-prompts

ttsakpc

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *