Я пытаюсь использовать 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 - это простой чат с программой, отображающий то, что он получает для отладки, и печатает только
какая-то команда
забирая # прочь
Фактическая программа, которую я хочу контролировать, нуждается в том, # что я не могу сделать без нее.