如何使用plink并期望同时

时间:2014-02-20 21:54:55

标签: tcl expect plink

我正在使用plink并期望从Windows连接服务器。我已经创建了一个文本小部件.l1来查看durign连接上发生了什么。通常当我使用它时:

catch {exec plink.exe -ssh myserver} res
.l1 insert 1.0 $res

我收到一个.l1文本小部件:“密码:”这意味着plink工作,它连接服务器并要求我输入密码。

当我使用spawn代替exec时:

catch {spawn plink.exe -ssh myserver} res
expect "password: "
.l1 insert 1.0 $res
exp_send "exit"

我收到一些随机数字,如1482或4584.为什么它不起作用?

1 个答案:

答案 0 :(得分:1)

期待记得它所看到的。我强烈建议您阅读“探索期待”一书。

这样的事情(未经测试)应该有所帮助:

spawn plink.exe -ssh myserver
expect "password: "
.l1 insert 1.0 $expect_out(buffer)
exp_send "password\r"
expect "my_shell_prompt$ "
.l1 insert end $expect_out(buffer)
... etc