09 octobre 2009

Script perl : Tester une connexion via un telnet en perl

J'ai trouvé ce script sur un forum. Son but est d'effectuer un telnet en prenant comme paramètre une IP et un port. Ce qui est génial c'est qu'il gère les timeout, alors que si vous faîtes le test en ligne de commande vous pouvez attendre plusieurs minutes avant d'avoir une réponse. Ce qui est intéressant c'est qu'en gérant les timeout, ce script perl peut être intégré dans un outil de monitoring comme zabbix. En effet, le serveur zabbix a un timeout de 30 secondes maximum, ce qui implique un problème de récupération des données... [Lire la suite]
Posté par fatihaelh à 18:17 - - Commentaires [7] - Permalien [#]
Tags : ,

26 novembre 2007

Comment utiliser des constantes définies dans des librairies externes en PERL?

Pour rendre vos programmes perl génériques et faciliter leur maintenance, vous devez centraliser la définition de vos constantes dans un seul fichier .pm. Imaginons qu'une constante soit définie dans une librairie perl constante.pm :package constante;our $Host="myHost"; Comment l'utiliser dans d'autres programmes perl (.pl) ?$maClasse->{host}  = $const::myHost;N'oubliez pas au préalable d'inclure le fichier où est défini la constante :use constante;
Posté par fatihaelh à 12:49 - - Commentaires [0] - Permalien [#]
26 novembre 2007

Récupération des arguments passés à une fonction PERL

Pour récupérer les arguments passés à une fonction PERL :$ret = $maClasse->maFonction(param1,param2);Utilisez le tableau @_ :sub maFonction{    my ($this,$param1,$param2)=@_;    #suite du code}
Posté par fatihaelh à 12:17 - - Commentaires [0] - Permalien [#]
26 novembre 2007

Récupération des arguments passés à un programme PERL

Pour récupérer des arguments passés à un programme perl :prog.pl param1 param2 param3vous utilisez le tableau @ARGV :sub main{   local ($param1, $param2, $param3)=@ARGV;    #suite de votre code}
Posté par fatihaelh à 12:11 - - Commentaires [0] - Permalien [#]
26 novembre 2007

Valider le format du nom d'un fichier en PERL

Comment être sûr que le nom d'un fichier saisi par l'utilisateur est correct en PERL ?Si comme moi vous cherchez la facilité et voulez utiliser une expression régulière sûre et efficace, ci-dessous le bout de code à utiliser : unless($fileName =~ m#([\w.-]+)$#){  print "Filename '$fileName' incorrect \n";  exit;}
Posté par fatihaelh à 11:35 - - Commentaires [0] - Permalien [#]
26 novembre 2007

PERL : récupérer la saisie d'un utilisateur

Comment récupérer facilement en quelques lignes ce qu'un utilisateur saisit à l'écran? Comment développer rapidement un programme perl interactif, ci-dessous en trois lignes ce que vous devez savoir :Ex d'un programme permettant de sauvegarder une base de données en demandant à l'utilisateur le nom de la base à sauvegarder : #Afficher un texte à l'écran :print("Nom de la base à sauvegarder\n");#Récupérer ce que l'utilisateur a saisichop(my $baseName= <STDIN>);#Effacer l'écransystem("clear");#suite de votre... [Lire la suite]
Posté par fatihaelh à 11:11 - - Commentaires [1] - Permalien [#]

26 novembre 2007

FindBin : module perl pour l'utilisation de chemins relatifs

Pour permettre l'utilisation de vos scripts perl sur n'importe quel arborescence, tâchez d'utiliser les chemins relatifs lorsque vous développez. Une solution simple est d'utiliser FindBin, voilà comment procéder : ex : prog.pl#!/usr/bin/perluse FindBin;use lib "$FindBin::Bin/../lib";use Init; #Appel de la librairie Init.pm figurant dans le répertoire lib#suite de votre codeex : Init.pm#!/usr/bin/perluse strict;use warnings;use diagnostics;use FindBin;package Init; #suite de votre codeDocumentation PERL
Posté par fatihaelh à 11:02 - - Commentaires [0] - Permalien [#]
15 mars 2007

Manipulation de table de hachage en perl

Comment parcourir une table de hachage en PERL? my %hash = (        'Nom'=>'Madison',        'Prénom'=>'Marie',        'Adresse'=>'10 rue de Paris',        'Ville'=>'Paris',        'Code Postal'=>'75002'        ); Le parcours s'effectue avec la fonction each. while(($key,$value) = each %hash){           print "clé:$key --... [Lire la suite]
Posté par fatihaelh à 11:52 - - Commentaires [0] - Permalien [#]
16 février 2007

Sauvegarde de la structure d'une base avec mysqldump et PERL

Commande à utiliser dans un script PERLsystem("mysqldump --tab=".$repSauvegarde." ".$nomBase." --opt --no-data");Cette commande sauvegarde la structure de la base passée en paramètre : $nomBase. Cela va produire autant de fichiers SQL que vous avez de tables, de plus cette commande va créer un fichier supplémentaire avec le nom de la base de données $nomBase. Ces fichiers sont importants si vous voulez exporter la structure des tables d'une base à une autre. En effet, ce sont des fichiers SQL de... [Lire la suite]
Posté par fatihaelh à 15:23 - - Commentaires [0] - Permalien [#]
16 février 2007

Date du jour en PERL

Petite astuce rapide : récupérer la date du jour en PERL use POSIX qw(strftime);my $date = strftime "%d-%m-%y", localtime;print my $date; Affiche 16-02-07. Pour en savoir plus : localtime
Posté par fatihaelh à 14:06 - - Commentaires [2] - Permalien [#]