Post on 03-Apr-2015
PERL
Mise à jour du 07/08/2005
Par : Philippe Bancquart
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 2
Objectifs
Sommaire
Présentation et utilisation du langage PERL Initiation à ce langage
Présentation Son utilisation Atouts et défis d’aujourd’hui Organisation Modèle économique, création de valeur et performances Chiffres clés Success stories, exemples, satisfaction
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 3
1
2
Utilisation
Partie 2 : les atouts et les défis d ’aujourd ’hui
Partie 3 : l ’organisation 3
Partie 4 : modèle économique, création de valeur et performances4
Partie 5 : chiffres clés 5
Partie 6 : success stories, exemples, satisfaction 6
PrésentationPrésentation0
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 4
Présentation
Qu’est ce que Perl ? P.E.R.L. signifie Practical Extraction and Report Lang
Un langage de programmation, logiciel gratuit
Un langage interprété, pas de compilation
Chaque « script » nécessite d'avoir l'interpréteur Perl sur la machine pour s'exécuter.
Portabilité : Perl existe sur la plupart des plateformes (Unix, NT, Windows, Mac,VMS, ...)
Nombreuses librairies et utilitaires
Simplicité et robustesse
0
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 5
Utilisation
Manipuler des fichiers (notamment pour gérer plusieurs fichiers en même temps),
Manipuler des textes (recherche, substitution),
Manipuler des processus (notamment à travers le réseau).
Générer, mettre à jour, analyser des fichiers HTML (CGI),
Accès « universel » aux bases de données,
Conversion de formats de fichiers.
Ne pas utiliser pour interfaces interactives, calcul scientifiques,
Perl n’est plus lié au monde UNIX
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 6
Synthèse
Les variables commencent par $ on ne s’occupe pas du type.
Les listes commencent par @@alphabet = ('a'..'z'); Les deux points signifient de "tant à tant"
affectation @ch = @chiffres;
on fait référence à un élément du tableau selon son indice par :$chiffres[1] $fruits[0] premier
My $mon_fruit_prefere = 'kiwi';my $prixkiwiKilo = 12;$prix = $prixkiwiKilo * 0.1 ;my $chaine = "100 grammes de $mon_fruit_prefere vaut $prix Euros";print $chaine ;
@chiffres = (1,2,3,4,5,6);@fruits = ('amande','fraise','cerise');@alphabet = ('a'..'f');@ch = @chiffres;print @alphabet, '_', @ch;
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 7
Type de données.
Nombre, classique , exemple 1.1
+, - ,* , /, ** (puissance), % (modulo)
< , > , <= , >= , == ( égalité) != (différence)
chaine ’Bonjour’
’L\’´ecole’ le \ devant ’ pour l’apostrophe
’c:\\windows\\system’ antislash doublées
’’ chaˆıne vide
’Bonjour \n’ le \n n’a pas de sens ici
utiliser une double quote pour être interprété
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 8
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 9
Exemple de fichier
# mon premier scriptprint "bonjour";my $monFichier="testcpi.pl";if (!-e $monFichier) {
my $error = $!;}my $i;open (F, $monFichier) || die "Problème d'ouverture : $!" ;while (my $ligne = <F>) {
print $ligne;$i++;
}print "Nombre de lignes : $i pour le fichier .$monFichier";close F;
Un commentaireUn message de bienvenuCréation d’une variable $monFichieret on affecte le nom du fichierVérification que le fichier existe.Die : gestion des erreurs et affichage du code.
Variable compteur, pas de gestion des types Ouverture du fichier contenu dans la variable, F est l’identifiant pour le repérer. || si erreur alors affichage
Tant que pas la fin fichier, lecture ligne à ligne rangement dans la variable $ligneAffichage de la variable ligneIncrémentation compteur
Affichage message avec texte et variables mélangées le point fait concaténation.
Fermeture fichier
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 10
2
Partie 1 : historiquePartie 1 : historique
Partie 2 : les atouts et les défis d’aujourd’hui
Partie 3 : l ’organisation 3
Partie 4 : modèle économique, création de valeur 4
Partie 5 : chiffres clés 5
Partie 6 : success stories, exemples, satisfaction 6
0 Présentation
et performances
1
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 11
1PERL : FICHIERS
Pour écrire un fichier
open(FILEHANDLE,">>nomdufichier");
print FILEHANDLE "Nom: ",$html->param('nom'),"\n"; print FILEHANDLE "--------------------------------------------------\n";
close FILEHANDLE;
Ouverture en lecture : open(FILEHANDLE,"<nomdefichier");
@lignes = <FILEHANDLE>;
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 12
Exercices Fichiers
Nous avons une structure XML et un fichier avec des données.
L’objectif est de mettre les données dans les tags XML.
Fichier structure <nom> ^comment NOM </nom>
Fichier données ^comment NOM : Philippe
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 13
FICHIERS
L'ouverture consiste à associer un descripteur de fichier (filehandle) à un fichier physique.
open (FIC1,’monfichier’); # ouverture en lecture
open (FIC2,'c:\\tmp\\truc’); #
open (FIC3,’>toto’); # > pour ouverture en écriture
open (FIC3,’>>titi’); # >> pour ouverture en ajout
Vérification que tour se passe bien. On peut utiliser un die conditionnel pour traiter les valeurs de retour de open :
open(FIC,’MonFichier’) || die("Pb d’ouverture\n");
Close(FIC);
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 14
Lecture Fichier
Pour parcourir l’ensemble du fichier, rangement dans $_
open (F, $fichier) || die "Problème pour ouvrir $fichier: $!";while (my $ligne = <F>) {
print $ligne;}close F;
On range dans une variable $ligne = <FENT>;
$reponse = <STDIN>; => lecture d'une ligne à l'écran
La fin de ligne (retour-chariot) est lue également. Pour enlever cette fin de ligne il suffit d'utiliser la commande chop, chomp ou son équivalent : chomp
On peut lire toutes les lignes d'un fichier dans un tableau (en une seule instruction)@lignes = <FENT>;
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 15
Lecture standard
1. On effecture la lecture de l’entrée, et affiche le nombre de ligne.
2. On peut avoir plusieurs fichiers en entrées.Lire les lignes fichier e1 puis le e2
3. On peut tout lire en 1 instruction@lignes = <FILEHANDLE>; Ainsi $ligne[0] sera la première ligne, $ligne[1] sera la deuxième etc...
1. my $i=0;while (my $ligne = <>){
$i++;}print "nb $i "
2. @ARGV = ("e1.txt","e2.txt"); while ($ligne = <>){ print("$ligne"); }
Direction Commerciale et MarketingModèle PowerPoint - mise à jour 19 mai 2003 - page 16
1. Ensuite vous pouvez remplir le fichier avec vos variables et texte
2. On peut utiliser également sprintf avec les normes du C
1. open(FILEHANDLE,">>nomdufichier"); print FILEHANDLE "Nom: "$var \n"; print FILEHANDLE "-----------------\n";