Gráfico de banda só com texto
Publicado por Rômulo Torres Silva 21/06/2008
[ Hits: 7.043 ]
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>"
Redirecionador de acordo com o browser
Motor de busca para o Viva o Linux no Firefox
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Converter os repositórios Debian para o novo formato com as chaves
Instalando Spotify no Debian 13
Realizar overclock no Miyoo Mini (plus ou normal)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (5)
E aí? O Warsaw já está funcionando no Debian 13? (2)
Dúvidas sobre a originalidade de conteúdos online (12)