Je voudrais savoir comment faire une "barre de progression" en Perl.
En fait il s'agirait plutot d'un enchainement de caractères , style / - \ | pour simuler une attente.
j'ai trouvé ce code :
Mais le soucis c'est le While(1).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 sub _barre_progression { my @spin = ('|','/','-','\\'); #initialise les éléments pour l'attente my $i = 0; #initialise l'index while(1) { print $spin[$i]; #aiffche l'élément de la barre sleep 1; #attend un peu print chr 8; #efface le caractère $i = ($i+1) % scalar @spin; #incrémente l'index } }
L'ideal serait de pouvoir lancer cette routine avant un long traitement, et pouvoir l'arrêter à la fin. Telle qu'elle est programmée, elle va tourner sans arrêt !!
Je sais qu'il existe une lib appellée twiddle sur CPAN, mais malheureusement je ne peux pas installer de nouvelle lib sur le PC où Perl tourne (pb d'admin et maintenance). Donc tout le code nécessaire sera dans le programme principal.
Merci d'avance
Partager