Bonjour,
J'aimerai faire une condition sur un nombre à virgule :
J'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #!/usr/bin/perl use strict; use warnings; my $infile= 'MATLAB.log'; my @prstat= `prstat 0 1 | grep -v PID | grep -v Total`; #print "@prstat \n"; foreach my $line (@prstat) { my @line=split (/\s+/,$line); #La colonne 10 doit contenir MATLAB if ($line[10] =~ /MATLAB/) { print "Flag time : $line[1] $line[8] $line[2] $line[10] $line[9]\n"; my @percent=split (/%/, $line[9] ); print "Flag pourcentage : $percent[0]\n"; if ( $percent[0] > 1) { open (WRITE, ">>$infile"); print WRITE "Flag time : $line[1] $line[8] $line[2] $line[10] $line[9]\n"; close (WRITE); } } }
Flag time : 16982 6:55:11 user1 MATLAB/66 0,1%
Flag pourcentage : 0,1
Argument "0,1" isn't numeric in numeric gt (>) at ./MATLAB_using.pl line 16.
J'ai essayé une substitution de la virgule par un point mais ma variable $percent[0] prend la valeur dans ce cas....
Merci de votre aide.
Partager