Expect.pm отправить обрезает знак числа - PullRequest
1 голос
/ 04 апреля 2019

Я пытаюсь использовать Expect.pm на старой машине с Perl 5.8.8. Это работает, но когда я отправляю текст, который содержит знак «#», он удаляется из текста. Есть ли способ убежать / защитить его?

Спасибо

Извините, исправлено, это 5.8.8

#!/usr/bin/perl
use Expect;
use IPC::Open2;
my $cmd="./rec";
my $e = Expect->new;
$e->debug(0);
$e->spawn($cmd) or die;
$e->log_stdout(1);
$e->raw_pty(0);
my $cmd="#some command";
print "cmd: [$cmd]\n";
$e->send($cmd);
$e->expect(1,
  [ qr/^I:.*/ => sub { my $exp = shift; print "ok\n"; exp_continue;}],
  [ qr/^E:.*/ => sub {
        my $self = shift;
        print "ko\n";
        print "Match: <\n", $self->match, "\n>\n";
        print "Before: <", $self->before, ">\n";
        print "After: <", $self->after, ">\n";
        exp_continue;
        }]
  );
print "closing\n";
$e->clear_accum();
$e->close();

rec - это простой чат с программой, отображающий то, что он получает для отладки, и печатает только какая-то команда забирая # прочь Фактическая программа, которую я хочу контролировать, нуждается в том, # что я не могу сделать без нее.

...