У меня был ожидаемый скрипт, который работал;он содержал следующие строки:
expect "\[Y\]\> "
send "n\r"
Изменена ОС, с которой я взаимодействую, теперь у меня смешанная среда блоков.У некоторых теперь есть «[Y]>», у некоторых - «[1]>» в точке, с которой я пытаюсь разобраться.
Я попытался изменить код на:
expect {
"\[Y\]\> " { send "n\r";exp_continue }
"\[1\]\> " { send "2\r";exp_continue }
}
Однако, работая в режиме отладки, я вижу:
"Choose the password option:
1. Mask passwords
2. Plain passphrases
[1]>
expect: does "s...ses\r\n[1]> " (spawn_id exp5) match glob pattern "[Y]> "? no
"[1]> "? no
expect: timed out"
Я не понимаю, почему исправленный код не работает, либо для «[Y]>», либо для «[1]>», когда «[Y]> "сопоставлялось до того, как было введено выражение else.