Какая польза от команды ожидаемого в Expect? - PullRequest
1 голос
/ 04 апреля 2020

do c говорит:

принимает те же аргументы, что и expect, но возвращает немедленно.

Но что означает "возврат" сразу "?

Какое использование этой команды может быть?

1 Ответ

3 голосов
/ 04 апреля 2020

Изображение, которое вы породили программу, которая, скажем, случайным образом спрашивает «Вы уверены [yn]?»
Представьте, что в этой программе есть 100 вопросов, на которые нужно ответить.

Вы не хотите чтобы условно ожидать вопрос «Вы уверены» для каждого из этих 100 вопросов?

Ожидайте, что вы можете сделать:

spawn /some/annoying/program

expect_before {
    "Are you sure \[yn]?" {
        send "y\r"
        exp_continue
    }
}

expect "first question"
send "first answer\r"
# and so on.

Теперь вы охвачены: ожидаем неявно добавляет код expect_before в каждую expect команду.

...