Я пытаюсь научиться пользоваться ожидать , чтобы помочь мне автоматизировать развертывание некоторого программного обеспечения с помощью сценариев оболочки, и решил, что начинаю с чего-то простого, чтобы начать работу.
Я создал в своем домашнем каталоге файл с именем foo, используя:
touch foo
И я создал следующий скрипт, сохраненный как test.exp
#!/usr/bin/expect
spawn rm -i foo
expect "rm: remove regular empty file `foo'?"
send "y\r"
Когда я запускаю сценарий, используя ./test.exp
, он порождает команду rm, но не отправляет Y и возврат каретки.
Я знаю, что у меня нет опечатки в ожидаемой строке, так как я использовал копирование и вставку, чтобы вставить скрипт.
Что я делаю не так?
Добавьте эту строку после send
линия:
expect eof