在预期脚本中,如何允许交互返回字符串打印到STDOUT



示例会有所帮助:

#!/usr/bin/expect
spawn $env(SHELL)
expect "$ "
interact KILL return
send "exitr"
expect eof

所以在上面,当它通过交互将控制权交给我时,我可以发出任何我想要的命令。但如果我开始键入"KILL",似乎expect会接管STDOUT,所以我看不清我在键入什么。否则,它会按预期工作。

但当我键入"KILL"时,我也希望能够看到我正在键入的内容

我是不是遗漏了手册中的一些简单内容?谢谢

#!/usr/bin/expect
spawn $env(SHELL)
expect "$ "
interact -nobuffer KILL return
send "exitr"
expect eof

交互-无缓冲区

这似乎做到了。:)