Bonjour,
je souhaite en utilisant l’interpréteur Bash (et avec seulement les commandes externes 'test' et 'seq' ainsi que les builtins) calculer le pourcentage.
Le pourcentage de quoi? Le pourcentage de l'accomplissement d'une opération constituée d'un certain nombre connu d'étapes.
Un exemple? Une opération à 3 étapes :
$ ./percentage.sh 3
0%
33%
66%
Pour une opération constituée de plus de 100 étapes , on va devoir afficher plusieurs fois le même pourcentage :
$ ./percentage.sh 200
0%
0%
1%
1%
2%
2%
...
Alors j'ai réalisé un script qui fait ça, mais moi je me complique toujours la vie quand je développe. Peut être que vous pouvez me trouver plus simple?
Merci d'avance ;-)
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
23
24
25 #!/bin/sh nbr=${1} step=$((100 / ${nbr})) wait_cur=0 wait_max=0 if test ${step} -eq 0; then step=1 substraction=$((${nbr} - 100)) wait_max=$((${wait_max} + 1)) while test ${substraction} -gt 100; do substraction=$((${substraction} - 100)) wait_max=$((${wait_max} + 1)) done fi percentage=0 for each in `seq 1 ${nbr}`; do echo "${percentage}%" if test ${wait_cur} -lt ${wait_max}; then wait_cur=$((${wait_cur}+1)) else percentage=$((${percentage} + ${step})) wait_cur=0 fi done
Partager