인터랙티브한 프로그램과 대화하는 프로그램. telnet, ftp 등 사용자와 입출력을 요구하는 프로그램으로부터 지정된 문자열을 받으면 지정한 응답 문자열을 내보낸다. telnet 의 자동접속 등에 사용할 수 있다.
#! /usr/local/bin/expect spawn telnet sugang1 expect "login :" sleep 1 send "sugang\r" expect "word:" sleep 1 send "sugang\r" expect "6.5." sleep 2 send "xxxxx-xxx\r" # 내 학번 sleep 1 send "xxxxxx\r" # 내 주민등록번호 sleep 1 send "xxxx\r" # 내 암호 expect "작업" sleep 3 # 수정 send "2\r" sleep 3 # 연번 send "2\r" expect "2" sleep 2 # 넣고 싶은 강좌번호 send "007.009\r" sleep 1 send "001\r" # 여기서부터 무한루프로 돌린다 while 1 { expect "정원이 초과되어" sleep 2 # 다시 2.수정 send "2\r" sleep 2 # 연번 send "2\r" expect "2" sleep 2 # 강좌번호 send "007.009\r" sleep 1 send "001\r" } interact