Первый совет по разработке ожидаемой программы: прежде чем spawn
воспользуйтесь этой командой
exp_internal 1
Это покажет вам то, что ожидает, и вы увидите, как это происходит и не соответствует вашим ожидаемым образцам.
Далее вы можете указать регулярные выражения для своих шаблонов с помощью expect -re {^pattern$}
. Режим образца по умолчанию - сопоставление в стиле glob, которое задокументировано в команде Tcl string match . Регулярные выражения Tcl задокументированы здесь .
Вы хотите закодировать это:
send "classroom\r"
expect -re {class room: classroom 1:?}