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

Programmation et administration système Perl Discussion :

modification script perl pour nagios


Sujet :

Programmation et administration système Perl

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut modification script perl pour nagios
    Bonjour,

    j'utilise actuellement ce script perl pour nagios : ici

    ce script fonctionne très bien mais en SNMP v1 (donc aucune sécurité/authentification)

    n'y connaissant rien en PERL, j'ai quand même un peu regardé le code pour voir quoi modifier pour faire un support SNMP v3 sauf que je patauge un peu.

    Est-ce que quelqu'un saurait faire ça voire m'aider (car la seule chose que je sais modifier dans le script c'est la variable de version du SNMP :p)

    merci à vous par avance pour votre aide

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2013
    Messages : 247
    Points : 406
    Points
    406
    Par défaut
    Pour résoudre ton problème, je pense qu'il suffit de changer ta création de session (ligne 99):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my ($sess, $err) = Net::SNMP->session( -hostname => $server, -version => $version, -community => $comm);
    je ne peux pas tester, mais essaye d'intégrer les paramètres spécifiques à la v3:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    [-username      => $username,]    # v3
    [-authkey       => $authkey,]     # v3
     [-authpassword  => $authpasswd,]  # v3
    [-authprotocol  => $authproto,]   # v3
     [-privkey       => $privkey,]     # v3
    [-privpassword  => $privpasswd,]  # v3
    [-privprotocol  => $privproto,]   # v3
    Paramètres issus de la page



    Je pense que ça devrait te permettre de te connecter et donc de rendre ton script à nouveau fonctionnel.
    Si ce n'est pas le cas, n'hésite pas a revenir avec le détail de ce qui ne fonctionne pas et on essayera de t'aider

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    bon ça me rassure je suis pas complétement con

    j'avais fait la même chose mais différemment (je te montrerai dès que je serais de retour au boulot donc demain)


    ça marchait pas (mais je me suis peut être trompé dans un paramètre ou autre, ou autre chose à modifier encore) et comme il n'y a pas de debug c'est compliqué :p

    je te tiens au courant dès demain !

  4. #4
    Expert confirmé

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    3 577
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 577
    Points : 5 753
    Points
    5 753
    Par défaut
    Citation Envoyé par tetzispa Voir le message
    et comme il n'y a pas de debug c'est compliqué :p
    Perl est fournit avec son debugger : perl -d <script.pl>
    Plus j'apprends, et plus je mesure mon ignorance (philou67430)
    Toute technologie suffisamment avancée est indiscernable d'un script Perl (Llama book)
    Partagez vos problèmes pour que l'on partage ensemble nos solutions : je ne réponds pas aux questions techniques par message privé
    Si c'est utile, say

  5. #5
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    bah je pensais + à un debug sur la requête de ma commande, voir si elle est bien exécutée ou pas, on peut le voir par perl -d ?

    (enfin faudrait que je connaisse la requête à faire en ligne de commande perl ceci dit )

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2013
    Messages : 247
    Points : 406
    Points
    406
    Par défaut
    Citation Envoyé par tetzispa Voir le message
    bah je pensais + à un debug sur la requête de ma commande, voir si elle est bien exécutée ou pas, on peut le voir par perl -d ?

    (enfin faudrait que je connaisse la requête à faire en ligne de commande perl ceci dit )
    je trouve qu'il y a déjà pas mal de debugger (print du script) qui peuvent servir.
    Que fait ton script actuellement? As-tu une erreur de compilation? le script s'exécute mais ne te renvoie pas ce que tu attends? le script s'exécute et te renvoie un des prints de problème?

    N'ayant aucun renseignement, je pensais que ton problème venait juste de la connexion avec le passage à la v3 et donc le manque de paramètres attendus.
    Si tu avais déjà fait cette modification, pourrais-tu nous en dire plus sur ce que le script te retourne comme "erreur"

  7. #7
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    je réponds demain dès que je suis sur ma machine

  8. #8
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    Bonjour !

    voilà les modifications que j'avais faite :

    à partir de la ligne 94 :

    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
    ### Functions
    ###############
    sub _create_session {
    my ($server, $name, $protocol, $password, $auth) = @_;
    my $version = 3;
    my $name = 'SOGECAPV3';
    my $protocol = 'SHA';
    my $password = 's0g3c@pv3';
    my $auth = 'authNoPriv';
    my ($sess, $err) = Net::SNMP->session( -hostname => $server, -version => $version, -securityName => $name, -authProtocol => $protocol, -authkey => $password, -securityLevel => $auth);
    if (!defined($sess)) {
    print "Can't create SNMP session to $server\n";
    exit(1);
    }
    return $sess;
    }
    après :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    ### Gather input from user
    #############################
    my $switch;
    # my $community;
    my $check_type;
    my $warn = 0;
    my $crit = 0;
    my $int;
    my $community;
    my $oidint;
    my $name;
    my $protocol;
    my $password;
    my $auth;
    puis :


    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
    while(@ARGV) {
    my $temp = shift(@ARGV);
    if("$temp" eq '-H') {
    $switch = shift(@ARGV);
    } elsif("$temp" eq '-u') {
    $name = shift(@ARGV);
    } elsif("$temp" eq '-a') {
    $protocol = shift(@ARGV);
    } elsif("$temp" eq '-A') {
    $passsword = shift(@ARGV);
    } elsif("$temp" eq '-l') {
    $auth = shift(@ARGV);
    } elsif("$temp" eq '-t') {
    $check_type = shift(@ARGV);
    } elsif("$temp" eq '-w') {
    $warn = shift(@ARGV);
    } elsif("$temp" eq '-c') {
    $crit = shift(@ARGV);
    } elsif("$temp" eq '-i') {
    $int = shift(@ARGV);
    } elsif("$temp" eq '-o') {
    $oidint = shift(@ARGV);
    } elsif("$temp" eq '-d') {
    $days = shift(@ARGV);
    if("$days" eq "") {
    $days = 14;
    et pour finir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    # Establish SNMP Session
    our $snmp_session = _create_session($switch,$name,$protocol,$password,$auth);
    alors hier ça ne fonctionnait pas et j'avais modifié un ou deux trucs car maintenant j'ai ce retour erreur :

    root [/usr/local/nagios/libexec] > ./test.pl -H dccis7
    Global symbol "$passsword" requires explicit package name at ./test.pl line 161.
    Execution of ./test.pl aborted due to compilation errors.

  9. #9
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    je suis un peu illettré, j'avais mis un "s" de trop à password donc maintenant voilà le retour erreur que j'ai :

    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
    root [/usr/local/nagios/libexec] > ./test.pl  -H dccis7 -t ps
    Syntax Error !
    check-cisco.pl
    -H = Ip/Dns Name of the Switch
    -C = SNMP Community
    -t = Check type
            temp - Temperature
            fan - Fan Fail
            ps - Power Supply Fail
            cpu - CPU Load
            mem - Memory
            module - Module Health
            freeint - Free eth interfaces for X days (-d)
            int - Interface Operation Stat (use with -i or -o)
    -w = Warning Value
    -c = Critical Value
    -d = number of days that th ethernet interface hasn't change state, default is 14 (only for -t freeint)
    -i = Interface Name (only for -t int)
    -o = Interface OID (only for -t int)

  10. #10
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2013
    Messages : 247
    Points : 406
    Points
    406
    Par défaut
    Citation Envoyé par tetzispa Voir le message
    je suis un peu illettré, j'avais mis un "s" de trop à password donc maintenant voilà le retour erreur que j'ai :

    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
    root [/usr/local/nagios/libexec] > ./test.pl  -H dccis7 -t ps
    Syntax Error !
    check-cisco.pl
    -H = Ip/Dns Name of the Switch
    -C = SNMP Community
    -t = Check type
            temp - Temperature
            fan - Fan Fail
            ps - Power Supply Fail
            cpu - CPU Load
            mem - Memory
            module - Module Health
            freeint - Free eth interfaces for X days (-d)
            int - Interface Operation Stat (use with -i or -o)
    -w = Warning Value
    -c = Critical Value
    -d = number of days that th ethernet interface hasn't change state, default is 14 (only for -t freeint)
    -i = Interface Name (only for -t int)
    -o = Interface OID (only for -t int)
    ton "erreur" est en fait ce que tu demandes d'afficher quand tu appelles la fonction FSyntaxError (ligne 130-132)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if($#ARGV < 5 or $#ARGV > 11) {
    FSyntaxError;
    }
    Dans ton exemple, ça me parait normal car le script doit avoir AU MOINS 5 et MAXI 10 arguments, ce qui n'est pas le cas car tu en as mis que 2 (/test.pl -H dccis7 -t ps)
    Essaie soit de commenter cet appel, soit de mettre suffisamment de paramètres

  11. #11
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    bah le script fonctionne en SNMP v1 avec au moins 3 arguments :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    root [/usr/local/nagios/libexec] > ./check_cisco.pl -H occis1 -t ps -C public
    PS: OK - 3 PS are running all good | total=3 err=0
    donc ce que tu me dis n'est pas valable :p

    là, j'ai passé mes variables en dur dans le script, etc. je ne sais même pas si ma syntaxe est bonne.

    Vu que j'ai tout renseigné (auth, password, protocol etc.) j'ai juste à renter mon hostname et le type de check, mais vu que j'ai une erreur de syntaxte, il attend peut être 3 arguments, et il faudrait donc le passer à 2

  12. #12
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    j'ai donc fait ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if($#ARGV < 3 or $#ARGV > 11) {
            FSyntaxError;
    }
    (je pense que les 5 arguments étaient cachés par défaut dans la session, vu que je précisais pas le niveau de SNMP qui était mis par défaut et d'autres trucs ^^)

    voilà ce que j'ai maintenant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    root [/usr/local/nagios/libexec] > ./test.pl  -H dccis7 -t ps
    Can't create SNMP session to dccis7
    donc je pense que ma requête de session dans mon script n'est pas bonne, et c'est là où je vais avoir besoin de vous

  13. #13
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2013
    Messages : 247
    Points : 406
    Points
    406
    Par défaut
    Comme supposé au début ton problème vient de la création de la session SNMP

    Dans ton message sur les modifications que tu as apportées (#8 de cette discution), tu n'as pas mis de "username"
    ensuite il faudra que tu regardes les paramètres spécifiques v3 (dans mon 1er post) afin de mettre tout ceux nécessaire à cette connexion

  14. #14
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    j'étais en pleine bataille là, j'utilise un script de test pour initialiser une connexion c'est assez le bordel ce que demande le perl

    je suis donc avec ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     my ($session, $error) = Net::SNMP->session( 
     -hostname => 'dccis7', 
     -version => 'snmpv3', 
     -username => 'SOGECAPV3', 
     -authprotocol => 'md5', 
     -authkey => '73306733634070763373306733634070', 
            );
    (pour du SHA ou MD5 il attend de l'hexadecimal en mot de passe sur 16 ou 20 caractères)

    et je me prends une erreur plutôt space :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    root [/usr/local/nagios/libexec] > ./pwet2.pl
    Received usmStatsWrongDigests.0
    y'a quelque chose dans le DIGEST (SHA/MD5) qu'il n'aime pas

  15. #15
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    Bon, j'ai fait un script qui fonctionne

    j'ai compris le processus, est-ce qu'une gentille âme pour introduire ce que j'ai fait dans mon script existant ? (j'ai un peu peur de faire n'importe quoi )

    alors j'explique, car on trouve pratiquement rien sur le net


    faire du SNMP V3 c'est beau dans l'idée, dans la pratique ça devient compliqué. Même en lisant cette doc je comprenais pas tout, et je savais que j'avais bien un problème lié à mon password à un moment.

    J'ai continué à creuser, et je suis tombé sur ça

    Il fallait donc récupérer l'engine ID sur l'équipement, et générer une clé qu'on peut renseigner dans son script :

    donc voilà à quoi mon script ressemble :

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    #!/usr/bin/env perl
     
       use strict;
       use warnings;
     
       use Net::SNMP;
     
       my $OID_sysUpTime = '1.3.6.1.2.1.1.3.0';
     
       my ($session, $error) = Net::SNMP->session(
          -hostname     => 'dccis7',
          -version      => '3',
          -username     => 'SOGECAPV3',
          -authprotocol => 'sha',
          -authkey      => '0x1dbb5f3bcf8978ad3862f87b2c630f7ecbaa2e18',
       );
     
    if (!defined $session) {
          printf "ERROR: %s.\n", $error;
          exit 1;
       }
     
       my $result = $session->get_request(-varbindlist => [ $OID_sysUpTime ],);
     
       if (!defined $result) {
          printf "ERROR: %s.\n", $session->error();
          $session->close();
          exit 1;
       }
     
       printf "The sysUpTime for host '%s' is %s.\n",
              $session->hostname(), $result->{$OID_sysUpTime};
     
       $session->close();
     
       exit 0;

    donc là, je récupère bien l'UpTime de mon équipement (eheh)

    maintenant, faudrait intégrer tout ça dans mon script originel et là si quelqu'un peut m'aider merci !

  16. #16
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    problème résolu !

    bon j'ai du rajouter le fait qu'on puisse passer le paramètre "authkey" en argument via nagios donc pour ce script voilà ce que ça donne au final pour les modifications :

    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
    ### Functions
    ###############
    sub _create_session {
    my ($server,$authkey) = @_;
    my ($sess, $err) = Net::SNMP->session(
          -hostname     => $server,
          -version      => '3',
          -username     => 'SOGECAPV3',
          -authprotocol => 'sha',
          -authkey      => $authkey,
       );
    if (!defined($sess)) {
    print "Can't create SNMP session to $server\n";
    exit(1);
    }
    return $sess;
    }

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if($#ARGV < 3 or $#ARGV > 11) {
            FSyntaxError;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ### Gather input from user
    #############################
    my $switch;
    my $key;
    my $check_type;
    my $warn = 0;
    my $crit = 0;
    my $int;
    my $oidint;
    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
    while(@ARGV) {
    my $temp = shift(@ARGV);
    if("$temp" eq '-H') {
    $switch = shift(@ARGV);
    } elsif("$temp" eq '-A') {
    $key = shift(@ARGV);
    } elsif("$temp" eq '-t') {
    $check_type = shift(@ARGV);
    } elsif("$temp" eq '-w') {
    $warn = shift(@ARGV);
    } elsif("$temp" eq '-c') {
    $crit = shift(@ARGV);
    } elsif("$temp" eq '-i') {
    $int = shift(@ARGV);
    } elsif("$temp" eq '-o') {
    $oidint = shift(@ARGV);
    } elsif("$temp" eq '-d') {
    $days = shift(@ARGV);
    if("$days" eq "") {
    $days = 14;
    }
    } else {
    FSyntaxError();
    }
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    # Establish SNMP Session
    our $snmp_session = _create_session($switch,$key);

    merci à vous !

  17. #17
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2013
    Messages
    247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2013
    Messages : 247
    Points : 406
    Points
    406
    Par défaut
    Citation Envoyé par tetzispa Voir le message
    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
    while(@ARGV) {
    my $temp = shift(@ARGV);
    if("$temp" eq '-H') {
    $switch = shift(@ARGV);
    } elsif("$temp" eq '-A') {
    $key = shift(@ARGV);
    } elsif("$temp" eq '-t') {
    $check_type = shift(@ARGV);
    } elsif("$temp" eq '-w') {
    $warn = shift(@ARGV);
    } elsif("$temp" eq '-c') {
    $crit = shift(@ARGV);
    } elsif("$temp" eq '-i') {
    $int = shift(@ARGV);
    } elsif("$temp" eq '-o') {
    $oidint = shift(@ARGV);
    } elsif("$temp" eq '-d') {
    $days = shift(@ARGV);
    if("$days" eq "") {
    $days = 14;
    }
    } else {
    FSyntaxError();
    }
    }
    pour gérer les paramètres du script perl, tu as "Getopt::Long"
    c'est du détail mais c'est plus propre

  18. #18
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    bah, là tu me parles chinois j'ai repris le script et puis je vais pas chercher à l'optimiser vu que mes connaissances en perl tendent vers 0 quand on va vers l'infini dans le temps

  19. #19
    Membre habitué
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Juillet 2014
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2014
    Messages : 84
    Points : 197
    Points
    197
    Par défaut
    Citation Envoyé par 6ril23 Voir le message
    pour gérer les paramètres du script perl, tu as "Getopt::Long"
    c'est du détail mais c'est plus propre
    c'est la première chose à laquelle j'ai pensé en voyant son code.

    un peu de documentation pour commencer :
    http://perldoc.perl.org/Getopt/Long.html


    Un peu d'utilisation et ça devient vite indispensable.

  20. #20
    Membre régulier
    Inscrit en
    Janvier 2011
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 179
    Points : 107
    Points
    107
    Par défaut
    je vous remercie, mais comme j'ai dit avant : le perl jamais fait, j'ai fait marcher ma cervelle pour faire fonctionner l'authentification !

    ptet qu'un jour je mettrais les mains dans le perl et j'optimiserais et j'améliorerais ce script :p

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 13/10/2014, 14h26
  2. script perl pour nagios
    Par tetzispa dans le forum Programmation et administration système
    Réponses: 4
    Dernier message: 06/06/2014, 11h06
  3. Réponses: 3
    Dernier message: 31/03/2008, 13h59
  4. Script PERL pour l'archivage/purge/zip de fichiers
    Par jfmerveille dans le forum Langage
    Réponses: 1
    Dernier message: 30/03/2007, 12h52
  5. script perl pour ftp
    Par donny dans le forum Modules
    Réponses: 5
    Dernier message: 29/09/2006, 12h02

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