expect 스크립트를 작동 시키려고합니다. 정규 표현식 파싱을 호출하기 위해 -re 플래그를 사용하면 'timeout'키워드가 사용됩니다 더 이상 작동하지 않는 것 같습니다. 다음 스크립트를 실행하면 '1 단계에서 시간 초과되었습니다.'라는 메시지가 표시되고 '2 단계에서 시작'하고 시간이 초과되지만 '2 단계에서 시간 초과되었습니다'메시지가 표시되지 않습니다. 새 메시지가 나타납니다.expect 스크립트에서 '-re'플래그가 작동하지 않습니다.
아이디어가 있으십니까?
#!/usr/bin/expect --
spawn $env(SHELL)
match_max 100000
set timeout 2
send "echo This will print timed out\r"
expect {
timeout { puts "timed out at step 1" }
"foo " { puts "it said foo at step 1"}
}
puts "Starting test two\r"
send "echo This will not print timed out\r"
expect -re {
timeout { puts "timed out at step 2" ; exit }
"foo " { puts "it said foo at step 2"}
}