expect脚本的默认超时处理程序

fzh*_*hou 5 expect

我有一个期望脚本,当某些任何期望条件不符合时需要失败.例如:

expect "Hello World"
Run Code Online (Sandbox Code Playgroud)

如果期望脚本在一定时间内没有找到"Hello World",则它应该失败.根据expect手册,我可以timeout在期望中添加一个条件,但是我expect在脚本中有很多语句,我不想​​为所有这些语句添加超时.有没有更好的方法呢?

gle*_*man 5

expect_after {
    timeout {
        puts "a default timeout clause for all subsequent expect commands"
    }
}
Run Code Online (Sandbox Code Playgroud)

后续的expect命令仍然可以提供自己的timeout子句,这些子句优先于上述.