PERL ::..

Introduction :.

Perl est un langage qui permet de créer des programmes structurés sous forme de scripts et qui seront interprétés par le shell. En réalité, lors de la demande d'exécution, le fichier source est pré-compilé et son résultat, composé de méta instructions sera alors interprété par le système. On reconnait les fichiers script par leur extension .pl et la distribution se fait par les fichiers texte qui sont les fichiers source. PERL est un acronyme pour "Pratical Extraction Report Language", il a été créé par Larry Wall en 1986. Ce langage permet d'élaborer des scripts avec des fonctions et permet le travail sur des fichiers, répertoires et faire des extractions sur des fichiers textes de tous types, bases de données etc.
C'est un outil puissant et convivial. On retrouve certaines caractéristiques du C, mais commme c'est un langage interprété, vous pourrez aussi donner des commandes en directe depuis la console "en ligne". Il intègre aussi les expressions rationnelles

Premiers pas :.

Avant de commencer

Il faut avant tout vérifier si est installé sur votre machine et pour ce faire il faut lancer la commande suivante qui donnera son emplacement s'il est installé sur votre poste.


$ which perl
/usr/bin/perl
$ 

	

Avec la commande suivante, le système vous donnera la version installée.

$ perl -v

This is perl 5, version 34, subversion 0 (v5.34.0) built for x86_64-msys-thread-multi

Copyright 1987-2021, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.



$

	

Et avec $PATH vous obtiendrez la confirmation d'une bonne configuration pour lancer votre programme.


	$ $PATH
	-bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:
	$

	

On essaie ...

On peut envoyer une commande perl de trois façons différentes. soit :

1) En appelant le programme perl et en lui indiquant ce qu'il doit faire.


$ perl -e 'print"Bonjour tout le monde !\n"'
Bonjour tout le monde !
$ 
	

2) Avec un appel de perl en, mais en lui demandant de traiter un fichier .pl qui comporte les commandes.


$ perl -e bonjour.pl
Bonjour tout le monde!

	

3) Ou en laçant un fichier script comme suit:


$ ./bonjour.pl

	

Essayons nous à créer un petit fichier de travail pour illustrer la troisième solution.
Depuis la console, on lance sur la ligne de commande en direct:

Avec votre éditeur préféré ... Les fichiers ont pour extension .pl et dans la première ligne des remarques on indique après le shebang (#!), le chemin du perl (/usr/bin/perl).
Après édition du fichier, on devrait avoir quelque chose de semblable.


	$cat bonjour.pl

	#!/usr/bin/perl
	print "Bonjour à tous !\n";

	

Ne pas oublier de faire le changement de mode du fichier, pour le rendre exécutable, avec la commande :


	$ chmod +x bonjour.pl 

	

Et, pour terminer, on lance le programme avec /usr/bin/perl bonjour ou plus simplement avec "./"
et le nom du fichier pour indiquer que le fichier se trouve dans le répertoire courant

	$ ./bonjour.pl
	Bonjour à tous !
	$ 
	

Pour aller plus loin :.

Rappel de la syntaxe

Sensible aux majuscules ou aux minuscules, PERL reconnaît la fonction du langage "open" mais pas "Open". Il ne voit alors qu'une variable ou une commande inconnue ...
Un # en début de ligne indique un commentaire et perl ignore la suite de la ligne
l'option -w dans la ligne #!/usr/bin/perl -w indique que le warning sont activés !
Extension des fichiers scripts avec .pl mais ce n'est pas indispensable !
Une instruction se termine par un ;
Les crochets ([...])associent un groupe d'instructions
L'affectation d'une valeur à une variable se fait avec le signe =.

Les variables

On trouve trois types de variables utilisées. Nous ne sommes pas obligé de les déclarer avant de les utiliser, au niveau du début programme, du fait de la pré-compilation!

Des variables avec le même nom, mais un type différents des autres seront considérées comme différentes.


	$nom, @nom, %nom

	

Les scalaires

Dans ce type de variable, on retrouve les nombres et les chaînes de caractères. On utilise 'my' pour définir la variable:


	my $nombre;
	my $valeur = 1024;
	my $nom = "Simon";

	my @resultats(22, 12, 23, 25);
	my @saisons = ("printemps", "été", "automne", "hiver");

	my %client = ("ROBERT", 55.50,"CHICAGO", 124, "OK" );

	

Liste des opérateurs de comparaison



Jean-Pierre Perroud, Switzerland,  

Licence Creative Commons
Ce(tte) oeuvre de Jean-Pierre Perroud est mise à disposition selon les termes de la licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage à l'Identique 3.0 non transposé.