Gráfico de banda só com texto
Publicado por Rômulo Torres Silva 21/06/2008
[ Hits: 7.198 ]
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>"
Motor de busca para o Viva o Linux no Firefox
Simplificando ao extremo o carrossel
Cálculo de frete/correios utilizando Ajax
Passagem automática de imagens com efeito Opacity
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux









