Ce tutoriel vous permettra de programmer en PERL sous Windows, de développer vos propres scripts . Vous pourrez utiliser des modules CPAN comme si vous étiez sous Linux. Pratique si vous n’avez pas de machine Linux à disposition.
Sommaire de l'article
Pourquoi Strawberry ?
Son installation est simple et à chaque mise à jour de Perl, on a très rapidement une version disponible. On dispose d’une version msi installable uniquement avec des privilèges d’administrateur, d’une version zip installable sans droits administrateur.
Il existe également une version portable qui fonctionne à merveille, que l’on peut installer n’importe où : sur une clé USB…
En ce qui concerne l’installation des modules, il faut oublier ppm et n’utiliser que l’utilitaire CPAN. Vous avez donc tous les modules à votre disposition pour vos programmes.
Strawberry Perl s’installe avec les compilateurs gcc, dmake… de ce fait, que l’on soit sous un Windows 32-bits ou 64-bits, tout est compatible et fonctionne du premier coup.
L’installation de modules via l’utilitaire cpan fonctionne à merveille comme sous Linux.
Vous pouvez télécharger le dernier package Strawberry depuis ce lien : Strawberry-Perl
Programmer en PERL sous Windows : Test de l’installation
Maintenant que Strawberry Perl est installé, nous allons écrire notre tout premier script PERL sous Windows pour voir si ça fonctionne correctement.
Test 1 :
Ouvrez CMD puis taper la ligne ci-dessous :
Perl -v
Voici le résultat que vous devriez avoir.
Si cela ne fonctionne pas, utiliser la commande suivante :
Path
Windows enregistre dans une variable les chemins vers divers fichiers exécutables nécessaires au système. Cela vous permet de lancer une commande sans avoir besoin de basculer dans le dossier où se trouve le programme en question. Vous pouvez ajouter n’importe quel dossier à cette variable PATH.
Aller dans le Panneau de configuration -> Système et sécurité -> Système -> Paramètres système avancés -> variables d’environnement -> Variables système -> Path -> Modifier
Puis rajouter le chemin d’accès à Strawberry, vu plus haut. Validez deux fois par OK. Vous pouvez alors exécuter les commandes des dossiers ajoutés sans spécifier de chemin.
Test 2
Créer un fichier hello-world.pl avec le code ci-dessous :
#!/usr/bin/perl # Modules used use strict; use warnings; # Print function print("Hello World\n");
Maintenant exécuter votre fichier hello-world.pl ou vous souhaitez et vous devriez avoir ceci :
Installer un module CPAN Manuellement
Vous pouvez très facilement installer un module CPAN manuellement, même si vous n’avez pas Internet sur votre machine. Il faudra quand même récupérer l’archive depuis le site METACPAN.
Prenons un exemple avec le package Net-SSH-Expect-1.09, dont j’ai eu récemment besoin pour réaliser un script pour la supervision d’un Palo-Alto.
Rechercher le module que vous souhaitez utiliser, puis télécharger le fichier source depuis Tools -> Download.
Copier le sur votre Windows dans le répertoire Temp. Puis décompresser l’archive avec 7-Zip par exemple.
En ligne de commande naviguer dans les répertoires (plusieurs décompressions sont nécessaires) jusqu’à arriver dans un répertoire avec les sources du module.
Puis taper les commandes suivantes pour compiler le module :
# perl Makefile.PL # gmake # gmake test # gmake install
A ce stade, vous devriez recevoir une erreur, car le composant Expect 1.14 (version minimum) ne dois pas être présent.
Il faudra donc télécharger et installer le module CPAN Expect avant.
Donc si vous souhaitez vous connectez à vos équipements en SSH pour exécuter des commandes depuis Windows, je vous conseille le module CPAN Net::SSH::Perl.
Il faudra en plus installer les dépendances suivantes pour fonctionner : String-CRC32, Module-Install, Digest-BubbleBabble, Crypt-Curve.
Vous pourrez essayer de vous connecter sur vos switchs avec ce mini-programme de test en PERL :
#!/usr/bin/perl -w use strict; use warnings; use Net::SSH::Perl; my $ssh = Net::SSH::Perl->new('ip_switch'); $ssh->login('login','password'); my($out) = $ssh->cmd("show version"); print $out;