
Envoyé par
seb974
Merci ça fonctionne impec :p
Mais tu pourrais m'expliquer ton code stp, ici surtout :
1 2 3 4
|
while(<>) {
last if ($etat_cpu, $details_cpu) = m/^Cpu (\w+): (.*)$/;
} |
lit les fichiers dont le nom est dans @ARGV, ici config, ligne par ligne, à chaque itération la ligne est placée dans la variable spéciale $_ qui est également la variable sur laquelle est appliquée par défaut l'expression régulière m//.
last if ($etat_cpu, $details_cpu) = m/^Cpu (\w+): (.*)$/;
Si tu ne connais pas encore les expressions régulières, je te conseille de les apprendre très vite, c'est un outil extraordinairement utile dans tous les domaines (et avec une très grande variété d'outils, pas seulement Perl). Ici cette expression régulière marchera pour une ligne qui commence par "Cpu " suivi par un mot, suivi par ": " puis par n'importe quoi jusqu'à la fin de la ligne. Si l'expression réussit, on stocke le mot et le n'importe quoi dans $etat_cpu et $details_cpu respectivement, puis on appelle 'last' pour sortir de la boucle de lecture.
--
Jedaï
Partager