0

标题类似于在 ActiveTCL 中无法使用 TCL 期望生成 ssh,但我认为我遇到了不同的问题......

我刚刚在我的 Windows 10 PC 上安装了 32 位版本的 ActiveTcl 8.5。安装之后,我在 tcl 命令行中输入以下内容,成功安装了 Expect:

teacup install Expect

在遵循有关如何使用 Expect 登录远程计算机的教程时,我的代码在尝试使用“spawn”命令时失败。我已将我的代码减少到名为 simple_ssh.tcl 的脚本文件中的以下最少行

#!/bin/sh
# \
exec tclsh "$0"  ${1+"$@"}
package require Expect
spawn ssh eric@192.168.1.191
expect "eric@192.168.1.191's password:"

当我使用命令运行它时tclsh simple_ssh.tcl,我收到错误:

不支持该请求。在执行“spawn ssh eric@192.168.1.191”(文件“simple_ssh.tcl”第5行)时子进程异常退出

如果我只是ssh eric@192.168.1.191在 tcl 提示符下键入,远程机器会以预期的提示符进行响应:

eric@192.168.1.191's password: 

并且 ssh 会话按预期运行。这样就可以看到ssh进程了。在我看来,'spawn' 可能没有正确集成到 Expect 中。我还能做错什么?我需要安装另一个包作为 ActiveTcl 的一部分才能让它工作吗?

4

1 回答 1

0

尝试:产生“ssh eric@192.168.1.191”

于 2020-06-25T11:43:34.293 回答