1

我正在使用 expect 来自动化基于终端的应用程序。我将根据“expect”命令的结果发送数据。我知道期望,在进行字符串匹配时,会将所有不匹配的字符串模式存储在缓冲区中。例如$expect_out(0,string) 用于存储expect 实际等待的字符串,而$expect_out(buffer) 包含直到上一个命令出现的所有不匹配的字符串模式。

我想知道是否有任何方法可以访问这些期望缓冲区,例如将期望缓冲区内容复制到某个变量中,如下所示

$mybuffer = $expect_out(buffer);

但上面的语句实际上是在 perl_app_hh.pl 第 72 行,靠近 "$expect_out(""

我只想将期望缓冲区的内容复制到变量中。所以请在这个问题上帮助我。

4

1 回答 1

0

您将不得不阅读Expect 模块的文档$expect(buffer)不是有效的 Perl。

$exp = Expect->spawn(...);
$exp->send(...);
$buffer = $exp->before();
于 2012-04-16T13:50:53.023 回答