utilisé Perl Socket pour exécuter des commandes sur serveur distant
Bjr TLM,
je veux exécuter des commandes sur un serveur de mon réseau local, et j'utilise un socket Perl
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
#!/usr/bin/perl
#use strict;
use warnings;
$socket = IO::Socket::INET->new(PeerAddr=> '@IP',
PeerPort=> 8080,
Proto=> "tcp",
Timeout=>10,
Type=> SOCK_STREAM) || die "Cannot connect to $adr_ip:$por $@";
my $s=IO::Select->new();
$socket->send("df -k"."\r",'');
sleep 2;
$socket->send("prstat"."\r",'');
sleep 2;
$socket->send("date"."\r",'');
sleep 2;
$s->remove($socket);
close($socket); |
et quand j'exécute, j'ai ca :
Code:
1 2 3 4 5
|
$ ./Perl_sock-v2.pl
Name "main::adr_ip" used only once: possible typo at ./Perl_sock-v2.pl line 10.
Name "main::por" used only once: possible typo at ./Perl_sock-v2.pl line 10.
Can't locate object method "new" via package "IO::Socket::INET" (perhaps you forgot to load "IO::Socket::INET"?) at ./Perl_sock-v2.pl line 6. |
pour info, je suis nul en Socket, et c'est juste une tentative de ma part, pour le module net SSH Perl, j'arrive pas a l'installé, il me dis a chaque fois qu'il faut installé un tel ou tel module, alors je tente avec Socket
et je sais pas si avec NET SSH PERL est plus rapide que le Socket en réponse,
mais j'ai tenté en Socket mais ca passe pas !!!