OVH Cloud OVH Cloud

taille de fichier

2 réponses
Avatar
Paul
Bonjour, j'ai un probleme avec un tout petit script perl :

my $maxSize =3D 100000;
my $currentSize =3D -s "file.txt";
if ($currentSize gt $maxSize) {=09
rename("file.txt", "file.old");
print $currentSize.">=3D".$maxSize."\n";
} else {
print $currentSize."<=3D".$maxSize."\n";
}

en l'=E9x=E9cutant, il m'affiche cela :
1209>=3D100000

Donc je ne comprends pas, car ma variable $currentSize est bonne (1209
octets) mais l'op=E9rateur "gt" ne fonctionne pas... car il trouve que
1209 est plus grand que 100000.

Est-ce un probl=E8me de transtypage ?
Merci de votre aide.

2 réponses

Avatar
Paul Gaborit
À (at) Thu, 13 Oct 2005 15:21:37 +0200,
Paul <ernond_paul_at_yahoo.fr> écrivait (wrote):
Donc je ne comprends pas, car ma variable $currentSize est bonne (1209
octets) mais l'opérateur "gt" ne fonctionne pas... car il trouve que
1209 est plus grand que 100000.


Hé oui... 100000 est bien plus petit que 1209 (dans l'ordre
alphabétique). L'opérateur de comparaison numérique est > (ou <).

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>

Avatar
Paul
Je confonds toujours, car je bascule souvent entre Perl et PHP (qui
n'utilise pas de gt, ge, lt...)

Merci beaucoup.



Le Thu, 13 Oct 2005 15:36:04 +0200
Paul Gaborit vous écriviez :


À (at) Thu, 13 Oct 2005 15:21:37 +0200,
Paul <ernond_paul_at_yahoo.fr> écrivait (wrote):
Donc je ne comprends pas, car ma variable $currentSize est bonne
(1209


octets) mais l'opérateur "gt" ne fonctionne pas... car il trouve que
1209 est plus grand que 100000.


Hé oui... 100000 est bien plus petit que 1209 (dans l'ordre
alphabétique). L'opérateur de comparaison numérique est > (ou <).

--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Perl en français - <http://perl.enstimac.fr/>