当前位置:Linux教程 - Shell - shell - expect用法

shell - expect用法

expect用法
2004-04-23 15:18 pm
来自:Linux文档
现载:Www.8s8s.coM
地址:无名

我是在 Win 2k上用 VM装的 Redhat 8.0,
写了一个Expect程序:su_root
#!/usr/bin/expect

set timeout 3

spawn su
expect "Password:"
send "szcj "
expect "#"
interact

执行后,结果

./su_root
spawn su
Password: szcj
(这里还有一个空行)

应该不是Expect的配置问题,我写了一个Expect程序,自动Telnet登陆别的服务器,能正常执行的。

为什么会这样?

实在是搞不明白,这个程序有时候能正常执行,有时候却不行

难道这个也是随机的?郁闷



set timeout 3

spawn su
expect "Password:"
exec sleep 1
send "szcj "
expect "#"
interact

嗯,可以了。
问一下,那里为什么要睡眠一会呢?
难道 expect "Password:" 还不够充分?