[perl] besoin d aide

besoin d aide [perl] - Perl - Programmation

Marsh Posté le 25-06-2002 à 15:55:14    

bon en gros j y connais rien au perl et faut que je comprenne comment marche un prog en perl pour faire du peering.
 
y a des socket et je pige pas comment ca marche : en faite surtout comment il recupere les valeur
 
ca veut dire quoi ce genre de chose
 
if (/^%/)
 
ou encore ca
 
if      ($line =~ /^import: +from AS(\d+)/i) {
     $ret{$1} |= 1;
 }
 
y a un bon site de reference sur le perl comme php.net pour le php ?


Message édité par belgarion le 27-06-2002 à 00:03:11
Reply

Marsh Posté le 25-06-2002 à 15:55:14   

Reply

Marsh Posté le 26-06-2002 à 09:08:46    

Bon, ce que tu montres ici, c'est du RegExp, Regular Expression, le truc (parmi tant d'autres) qui fait toute la force de Perl
 
Alors voyons voir :

Code :
  1. if (/^%/)


Ici, on teste le contenu de la variable $_ et on regarde si elle commence par le signe %
 

Code :
  1. if ($line =~ /^import: +from AS(\d+)/i) {
  2.     $ret{$1} |= 1;
  3. }


 
Ici, on teste le contenu de $line :
si $line commence par la chaîne 'import:', suivie d'au moins 1 espace, suivi de la chaine 'from AS' suivi d'au moins 1 chiffre ...
 
remarque bien le (\d+), ça signifie que le chiffre est isolé de la chaîne afin que ton prog puisse le récupérer directement. Du fait qu'il est mis entre ( ), ton chiffre se retrouve dans une variable RegExp qui s'appelle $1.
 
En gros, lorsqu'ensuite le programme fait :

Code :
  1. $ret{$1} = 1;


ça signifie ici que dans un hash %ret, tu va créer une clé correspondant au chiffre topé dans $line et indiquer 1 comme valeur à cette clé.
 
Bon, je sais que c po d'une simplicité extrême mais si tu veux la totalité de la doc en français, va faire un tour ici :
 
http://www.mongueurs.net/perlfr/perl.html


---------------
Samsung Galaxy S1 -> Samsung Galaxy S2 -> Samsung Note 2 -> Huawei Ascend Mate 7 -> ZTE Axon 7 -> OnePlus 6T -> Oppo Find X2 PRO -> Google Pixel 9 PRO XL
Reply

Marsh Posté le 26-06-2002 à 10:27:16    

Reply

Marsh Posté le 26-06-2002 à 17:58:29    

merci de ces precieuses url je continuemon apprentissage du perl et je galere moins.
 
sinon encore une question ca veut dire quoi ca
 

Code :
  1. my $commande = "whois $num\@whois.ripe.net";
  2. my $reponse = `$commande`;


 
la question c qu est ce que ca veut dire les ` `
est ce que c une demande a un siteen perl comme je le suppose

Reply

Marsh Posté le 26-06-2002 à 22:00:00    

:bounce:

Reply

Marsh Posté le 27-06-2002 à 08:10:20    

belgarion a écrit a écrit :

la question c qu est ce que ca veut dire les ` `
est ce que c une demande a un site en perl comme je le suppose



un site en Perl ???
 
non, les ` ` signifie que ce qui est entre ` ` va être exécuter. Et le fait d'affecter ça à la variable $reponse signifie que $reponse contiendra le résultat
 
Arf, pas simple à expliquer mais essaie ceci :
 

my $resultat = `dir C:`;
print $resultat;


 
en clair, `dir C:\` va retourner sur l'écran (STDOUT) le résultat de la commande dir C: et le fait de dire $resultat = `dir C:` signifie que $resultat récupère l'intégralité de STDOUT
 
heu, sorry si j'suis un peu embrouillé, mais j'ai po encore pris mon café :D


---------------
Samsung Galaxy S1 -> Samsung Galaxy S2 -> Samsung Note 2 -> Huawei Ascend Mate 7 -> ZTE Axon 7 -> OnePlus 6T -> Oppo Find X2 PRO -> Google Pixel 9 PRO XL
Reply

Marsh Posté le 27-06-2002 à 08:51:28    

` => backtick
 
ça sert a executer des commandes systeme et recuperer le resultat. Tu peux aussi utiliser exec ou system pour executer des commandes.
 
+ d'infos sur exec ou system => http://www.perldoc.com
 
hihi :D

Reply

Marsh Posté le 27-06-2002 à 08:52:33    

impulse a écrit a écrit :

+ d'infos sur exec ou system => http://www.perldoc.com
hihi :D


tu l'aimes bien ce site, pas vrai ? :D


Message édité par Aricoh le 27-06-2002 à 08:52:57

---------------
Samsung Galaxy S1 -> Samsung Galaxy S2 -> Samsung Note 2 -> Huawei Ascend Mate 7 -> ZTE Axon 7 -> OnePlus 6T -> Oppo Find X2 PRO -> Google Pixel 9 PRO XL
Reply

Marsh Posté le 27-06-2002 à 08:54:32    

Citation :

tu l'aimes bien ce site, pas vrai ? :D


 
Ben quand t'as pas Learning Perl ou le Camel book sous la main c'est tout de meme bien pratique.
 
hihi :D
 
PS : j'aime pas les zaricots par contre :D

Reply

Marsh Posté le 27-06-2002 à 08:56:14    

impulse a écrit a écrit :

 

Citation :

tu l'aimes bien ce site, pas vrai ? :D


 
Ben quand t'as pas Learning Perl ou le Camel book sous la main c'est tout de meme bien pratique.
 
hihi :D
 
PS : j'aime pas les zaricots par contre :D  



Les zaricots, caibon, mangez zan [:taimp]


---------------
Samsung Galaxy S1 -> Samsung Galaxy S2 -> Samsung Note 2 -> Huawei Ascend Mate 7 -> ZTE Axon 7 -> OnePlus 6T -> Oppo Find X2 PRO -> Google Pixel 9 PRO XL
Reply

Marsh Posté le 27-06-2002 à 08:56:14   

Reply

Marsh Posté le 28-06-2002 à 15:41:21    

Aricoh a écrit a écrit :

un site en Perl ???
 
non, les ` ` signifie que ce qui est entre ` ` va être exécuter. Et le fait d'affecter ça à la variable $reponse signifie que $reponse contiendra le résultat
 
Arf, pas simple à expliquer mais essaie ceci :
 

my $resultat = `dir C:`;
print $resultat;


 
en clair, `dir C:\` va retourner sur l'écran (STDOUT) le résultat de la commande dir C: et le fait de dire $resultat = `dir C:` signifie que $resultat récupère l'intégralité de STDOUT
 
heu, sorry si j'suis un peu embrouillé, mais j'ai po encore pris mon café :D




 
merci  :jap:  
 
en faite c pas un site en perl mais on utilise beaucoup de perl dedans comme outils

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed