IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Modules Perl Discussion :

utilisé Perl Socket pour exécuter des commandes sur serveur distant


Sujet :

Modules Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 79
    Par défaut 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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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 !!!

  2. #2
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mars 2007
    Messages : 244
    Par défaut
    salut,

    ou sont définis @IP, $adr_ip et $por ?
    et si tu veux utiliser le module IO::Socket::INET pense a l'appeller dans ton code.

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 79
    Par défaut
    ah OK, t'a raison, j'ai fait les chgts nécessaire, mais j'ai ce prob :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    $ ./Perl_sock-v2.pl
    Cannot connect IO::Socket::INET: connect: Operation now in progress at ./Perl_sock-v2.pl line 11.
    que dois je faire maintenant !!!!

  4. #4
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mars 2007
    Messages : 244
    Par défaut
    peut tu montrer le code

  5. #5
    Membre confirmé
    Inscrit en
    Septembre 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 79
    Par défaut
    le CODE :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    26
    27
    #!/usr/bin/perl
    #use strict;
    use warnings;
     
    use IO::Socket;
     
    $host = '@IP';
    $port = 8080;
     
     
    $socket = IO::Socket::INET->new(PeerAddr=> $host,
                                            PeerPort=> $port,
                                            Proto=> "tcp",
                                            Timeout=>10,
                                            Type=> SOCK_STREAM)   || die "Cannot connect $@";
     
    $socket->send("command1"."\r",'');
    sleep 2;
     
    $socket->send("command2."\r",'');
    sleep 2;
     
     
    $socket->send("command3"."\r",'');
    sleep 2;
     
    close($socket);

  6. #6
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mars 2007
    Messages : 244
    Par défaut
    à quoi correspond @IP ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Batch] Exécuter des commandes sur plusieurs serveurs en même temps
    Par Med_be dans le forum Scripts/Batch
    Réponses: 7
    Dernier message: 27/03/2015, 19h05
  2. Rapatriement des données sur serveur distant
    Par weebo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 21/09/2011, 11h29
  3. Erreur exécution fichier php sur serveur distant
    Par bipbipman2003 dans le forum Langage
    Réponses: 15
    Dernier message: 10/03/2011, 17h04
  4. Synchroniation des sauvegardes sur serveurs distants
    Par elodine dans le forum Administration
    Réponses: 2
    Dernier message: 28/12/2009, 09h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo