Ниже приведен следующий скрипт, который должен демонстрировать загрузку процессора:
#!/bin/bash
#Color declarations
RED='\033[0;31m'
GREEN='\033[0;32m'
BLUE='\033[0;34m'
LIGHTBLUE='\033[1;34m'
LIGHTGREEN='\033[1;32m'
NC='\033[0m' # No Color
a=1
b=3
end=$((SECONDS+120))
echo "CPU Utilization:"
echo "1%"
while [ $SECONDS -lt $end ] ; do
echo -e "${GREEN}\e[1A$((a+RANDOM%(b-a))).$((RANDOM%99))%${NC}"
sleep 1
done
По какой-то причине, когда процент выводится на экран, появляются два знака процента вместо последней цифрычисло и знак процента.Например, выход иногда составляет 2,7 %% вместо 2,72%.Все работает нормально, когда я убираю знак процента, но даже если я добавлю пробел между знаком процента и генерацией случайного числа, знак процента по-прежнему иногда появляется.Кто-нибудь знает, как решить эту проблему?В частности, проблема заключается в знаке процента здесь:
echo -e "${GREEN}\e[1A$((a+RANDOM%(b-a))).$((RANDOM%99))%${NC}"
^