【问题标题】:How to open ssh session using tcl expect and redirecting output to local machine如何使用 tcl expect 打开 ssh 会话并将输出重定向到本地机器
【发布时间】:2014-06-18 05:08:13
【问题描述】:

我是 TCL 的新手,我想连接一个 ssh 会话,在远程机器上我想执行"radiusd -X" 这个命令将通过控制台上的日志消息正常。我想捕获这些日志并需要存储在本地机器上(我启动了 ssh 会话)

请有人通过解释帮助我了解 TCL 期望编码部分

【问题讨论】:

  • 你认为你为什么需要expect?如果您需要自动发送密码,建议您改为设置 ssh 密钥。然后你可以简单地做set output [exec ssh user@host radiusd -X]
  • radiusd -X 不是密码 "radiusd -X" 是一个 linux 命令,用于在调试模式下启用 radius 服务器登录,一旦控制台上的命令抛出错误和日志消息,我想捕获这些错误和日志消息需要发送到本地机器(我在其中启动了 ssh 会话)
  • 我的示例所做的所有这些。你试过了吗?

标签: tcl expect


【解决方案1】:

您想做的事情会自动发生。

如果您通过 ssh 连接到远程主机并在那里执行命令,则输出会显示在您的本地终端中。

即使使用 shell 重定向也可以捕获它。

例子:

str@suse131-intel:~> ssh holiday-house-hamburg.com ls -l /
insgesamt 76
drwxr-xr-x  2 root    root  5920 17. Mär 09:28 bin
drwxr-xr-x  2 root    root   152 17. Mär 09:28 boot
drwxr-xr-x  8 root    root   800 16. Jun 21:01 dev

如果您想使用 Tcl 捕获输出,请按照 glenn jackman 告诉您的操作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-30
    • 1970-01-01
    • 2016-01-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多