Gráfico de banda só com texto
Publicado por Rômulo Torres Silva 21/06/2008
[ Hits: 7.119 ]
Homepage: pankdo.equipesound.com
Após ler um artigo sobre monitoramento de banda em tempo real aqui mesmo no VOL.
Utilizando o phplot o qual precisa de php4 tentei implementar mas foi complicando muito. Então tive essa idéia que é muito simples e rápida e não exige demais configurações, apenas é necessário o apache com suporte a cgi-bin.
Com essa idéia é possível gerar inúmeros gráficos sem a utilização de linguagens avançadas ou programas específicos. O segredo é o caracter "█" que é uma espécie de retângulo.
#!/bin/bash
maxup=120000
maxdown=150000
band1=$(cat /proc/net/dev | grep eth0 | cut -d: -f2 | awk '{print $1}')
sleep 1
band2=$(cat /proc/net/dev | grep eth0 | cut -d: -f2 | awk '{print $1}')
$((down = band2 - band1))
band1=$(cat /proc/net/dev | grep eth0 | cut -d: -f2 | awk '{print $9}')
sleep 1
band2=$(cat /proc/net/dev | grep eth0 | cut -d: -f2 | awk '{print $9}')
$((up = band2 - band1))
#calculando a percentagem
precdown=$(((100*down)/maxdown))
precup=$(((100*up)/maxup))
echo "content-type: text/html"
echo
echo
echo "
<html> <head> <title> GRAFICO DE USO DE BANDA </title> </head>
<body>
"
echo "<h2>GRAFICO DE BANDA ETH0</h2>"
echo "<pre>"
echo "$(cat /proc/net/dev)"
echo "</pre>"
echo "<b>"
echo "<br>down: $down bytes por segundo"
echo "<br>up: $up bytes por segundo"
echo "</b>"
echo "<br>"
n=0
corr=50
corb=250
corg=120
echo "<br><b>banda down:</b><br>"
while [ $n -le $precdown ] ; do
$((corr = corr + 2 ))
$((corb = corb - 2 ))
$((corg = corg - 1 ))
red=$(echo " ibase=10 ; obase=16; $corr" | bc )
blue=$(echo " ibase=10 ; obase=16; $corb" | bc )
gren=$(echo " ibase=10 ; obase=16; $corg" | bc )
echo -e -n "<font color=\"${red}${gren}${blue}\">█</font>"
$((n = n + 1))
done
echo "$precdown%"
n=0
corr=50
corb=250
corg=120
echo "<br><b>banda UP:</b><br>"
while [ $n -le $precup ] ; do
$((corr = corr + 2 ))
$((corb = corb - 2 ))
$((corg = corg - 1 ))
red=$(echo " ibase=10 ; obase=16; $corr" | bc )
blue=$(echo " ibase=10 ; obase=16; $corb" | bc )
gren=$(echo " ibase=10 ; obase=16; $corg" | bc )
echo -e -n "<font color=\"${red}${gren}${blue}\">█</font>"
$((n = n + 1))
done
echo "$precup%"
echo "<br><br><br><br>considerando 100%=$maxdown Bps para down <br> e 100%=$maxup Bps para up <br> levar em consideracao o trafego para a aquisicao desta pagina"
echo "</body>"
echo "</html>"
JSOO - Classe para manipular Querystring
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? [RESOLVIDO] (15)
Secure boot, artigo interessante, nada técnico. (4)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)









