Подскажите по скрипту..
# perl -c /root/Desktop/show.pl
Bareword "SSH2_MSG_CHANNEL_OPEN_CONFIRMATION" not allowed while "strict subs" in use at /root/Desktop/show.pl line 34.
Bareword "SSH2_MSG_CHANNEL_REQUEST" not allowed while "strict subs" in use at /root/Desktop/show.pl line 37.
/root/Desktop/show.pl had compilation errors.
#!/usr/bin/perl
use strict;
use Net::SSH::Perl;
use Net::SSH::Perl::Cipher;
my $port = "ssh";
my $host ="192.168.16.108";
my $user = "user";
my $pass = 'qwerty';
my $cmd = 'uname -a';
my $ssh = Net::SSH::Perl->new($host,protocol => 2,port => 22,debug => 1);
$ssh->login($user, $pass);
sub cmd {
my $ssh = shift;
my($cmd, $stdin) = @_;
my $cmgr = $ssh->channel_mgr;
my $channel = $ssh->_session_channel;
$channel->open;
$channel->register_handler(SSH2_MSG_CHANNEL_OPEN_CONFIRMATION, sub {
my($channel, $packet) = @_;
$channel->{ssh}->debug("Sending command: $cmd");
my $r_packet = $channel->request_start("exec", 0);
$r_packet->put_str($cmd);
$r_packet->send;
# if ($stdin) {
# $channel->send_data($stdin);
# $channel->drain_outgoing;
# $channel->{istate} = CHAN_INPUT_WAIT_DRAIN;
# $channel->send_eof;
# $channel->{istate} = CHAN_INPUT_CLOSED;
# }
});
my($exit);
$channel->register_handler(SSH2_MSG_CHANNEL_REQUEST,
_make_input_channel_req(\$exit));
my $h = $ssh->{client_handlers};
my($stdout, $stderr);
if (my $r = $h->{stdout}) {
$channel->register_handler("_output_buffer",
$r->{code}, @{ $r->{extra} });
}
else {
$channel->register_handler("_output_buffer", sub {
$stdout .= $_[1]->bytes;
});
}
if (my $r = $h->{stderr}) {
$channel->register_handler("_extended_buffer",
$r->{code}, @{ $r->{extra} });
}
else {
$channel->register_handler("_extended_buffer", sub {
$stderr .= $_[1]->bytes;
});
}
$ssh->debug("Entering interactive session.");
$ssh->client_loop;
($stdout, $stderr, $exit);
}
Ответ на:
комментарий
от kranky
Ответ на:
комментарий
от kranky
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от kranky
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум перл, нид хелп (2008)
- Форум perl: Cannot replace non-existent sub (main::shell) (2008)
- Форум Net::SSH::Perl (2008)
- Форум [Perl][cisco] (2011)
- Форум Perl + XMPP (2008)
- Форум [perl] Net::XMPP2 и многопоточность. (2008)
- Форум двунаправленный канал через ssh на perl (2003)
- Форум [Владельцам ASUS Wl-500g] Качалка... (2008)
- Новости Анонсирован выход Perl 7 (2020)
- Форум Ещё один jabber-shell (2009)