expect - Expect中的`expect_before`命令有什么用?
问题描述
医生说:
接受与 相同的参数
expect
,但它立即返回。
但是“立即返回”是什么意思?
这个命令的用途是什么?
解决方案
图片你生成了一个程序,比如说,随机询问“你确定 [yn]?”
想象一下,这个程序有 100 个问题需要回答。
对于这 100 个问题,您不希望有条件地期待“你确定”的问题。
Expect 让您可以:
spawn /some/annoying/program
expect_before {
"Are you sure \[yn]?" {
send "y\r"
exp_continue
}
}
expect "first question"
send "first answer\r"
# and so on.
现在你被覆盖了:expect隐式地将expect_before
代码添加到每个 expect
命令中。