1

我必须将来自 1980 电话系统 (DMS100) 的命令的输出保存在文件中。我有一个期望脚本来执行此操作,但我的问题如下:

  1. 该命令最多可以输出 10 个小时的信息。
  2. 由于某种原因,在提交我的命令后,我的会话在 10 分钟后关闭。

我需要这样的东西:在期望时发送命令可以获得特定的文本

但不同的是,我的期望可以在 10-12 小时后实现,并且我的会话每 10 分钟到期一次。

我想在我期望我的字符串时发送一个不可见的字符,以使我的会话保持活跃。像这样的东西:

While expect "The End Of My Output"
{
send \007
}

我怎样才能做到这一点?

编辑:

我的问题是我使用的 telnet 端口配置了 10 分钟超时。找到另一个没有超时的端口并且它工作正常。

4

1 回答 1

0

尝试这样的事情(未经测试):

# timeout after 5 minutes
set timeout 300

expect {
  "The End Of My Output" {
    # got all the output
  }
  timeout {
    send "\007"
    exp_continue
  }
}
于 2013-03-13T09:02:31.100 回答