Ispeed - Medidor de velocidade de download
Publicado por Tiago Weber 23/06/2009
[ Hits: 13.800 ]
Este script mede a velocidade de download na internet baseado no cálculo da média de velocidade
de download enquanto o wget baixa um grande arquivo de um servidor.
O arquivo que o script tentará baixar pode ser alterado pelo usuário através da edição da variável
"link". Após a medição, o script exibe uma tabela de referência mostrando aproximadente quanto
tempo o usuário levaria para baixar alguns tipos de arquivos.
#! /bin/bash
# -----------------------------------------------------------------------
# Script: Internet Speed (Ispeed)
# Author: Tiago Oliveira Weber
# E-mail: towalker@gmail.com
#
# Description: This script measures the internet download speed based on
# the download speed mean of wget while downloading a big file from a
# server.
# The file the script is going to try to download can be changed by the
# user in the "link" variable.
# -----------------------------------------------------------------------
# Define links
link=ftp://ftp.slackware-brasil.com.br/slackware-12.0-iso/slackware-12.0-install-d1.iso
# Start to download a file
wget -O /tmp/tempfile -o /tmp/ispeed.log -b $link;
echo -e "\n Wait a few seconds while your internet is being measured"
# Reads values from the log
sleep 10
awk '$5 ~ ".........." {print $8}' /tmp/ispeed.log > /tmp/ispeed2.log
tail -10 /tmp/ispeed2.log > /tmp/ispeed3.log
cut -f 1 -d "K" -s /tmp/ispeed3.log > /tmp/ispeed4.log
# Put values into variables
count=1;
while read line; do
eval var$count=$line
count=`expr $count + 1`;
done < /tmp/ispeed4.log;
# Round values
vare1=`echo $var1|awk '{print int($1+0.5)}'`
vare2=`echo $var2|awk '{print int($1+0.5)}'`
vare3=`echo $var3|awk '{print int($1+0.5)}'`
vare4=`echo $var4|awk '{print int($1+0.5)}'`
vare5=`echo $var5|awk '{print int($1+0.5)}'`
vare6=`echo $var6|awk '{print int($1+0.5)}'`
vare7=`echo $var7|awk '{print int($1+0.5)}'`
vare8=`echo $var8|awk '{print int($1+0.5)}'`
vare9=`echo $var9|awk '{print int($1+0.5)}'`
vare10=`echo $var10|awk '{print int($1+0.5)}'`
# calculate the mean
eval sum=`expr $vare1 + $vare2 + $vare3 + $vare4 + $vare5 + $vare6 + $vare7 + $vare8 + $vare9 + $vare10`;
eval mean_kbytes=`expr $sum / 10`;
eval mean_kbits=`expr $mean_kbytes \* 8`;
# Display Results
clear
echo " Measurement Results "
echo -e "_______________________________________________________________"
echo -e " Download Speed is: $mean_kbytes Kbytes/s or $mean_kbits Kbits/s \n \n";
# Comparisons
mp3_size_kbytes=5000
videoclip_size_kbytes=35000
movie_size_kbytes=800000
cdrom_size_kbytes=737000
dvd_size_kbytes=4700000
eval time_mp3_min=`expr $mp3_size_kbytes / $mean_kbytes / 60`
eval time_videoclip_min=`expr $videoclip_size_kbytes / $mean_kbytes / 60`
eval time_movie_min=`expr $movie_size_kbytes / $mean_kbytes / 60`
eval time_cdrom_min=`expr $cdrom_size_kbytes / $mean_kbytes / 60`
eval time_dvd_min=`expr $dvd_size_kbytes / $mean_kbytes / 60`
# Display Comparisons
echo -e " Reference Download Time Table "
echo -e "_______________________________________________________________"
echo -e " Type \t \t Size (Kbytes) \t \t Time (minutes)"
echo -e " Music (mp3) \t $mp3_size_kbytes \t \t \t $time_mp3_min"
echo -e " Videoclip \t $videoclip_size_kbytes \t \t \t $time_videoclip_min"
echo -e " Movie \t $movie_size_kbytes \t \t $time_movie_min"
echo -e " Cd-Rom \t $cdrom_size_kbytes \t \t $time_cdrom_min"
echo -e " DVD \t \t $dvd_size_kbytes \t \t $time_dvd_min"
# Finish the temporary activities
killall -9 wget
rm /tmp/ispeed.log
rm /tmp/ispeed2.log
rm /tmp/ispeed3.log
rm /tmp/ispeed4.log
rm /tmp/tempfile
Backup bases de dados Firebird com envio via FTP e local
Montando sua máquina virtual para engenharia reversa em Linux
facilitando e organizando a configuracao do mrtg com ipfm
Free VPN - download de VPNs do vpnbook.com
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
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
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









