Calcul de la charge réseau si plusieurs interfases
Bonjour,
J'ai réalisé un script pour connaitre la charge d'une interfase réseau d'une machine :
Code:
1 2 3 4 5 6 7 8
|
function reseau()
{<div style="margin-left:40px">TB1=`cat /proc/net/dev | grep eth: | awk '{print $10}'`
sleep 60
TB2=`cat /proc/net/dev | grep eth: | awk '{print $10}'`
T=$(echo "(($TB2 - $TB1) / 60) / 100" | bc)
echo "Charge réseau :"
echo "Bande passante : $T Kbits/s"</div>} |
Cela fonctionne très bien quand on a qu'une carte réseau.
Pour le cas d'une machine avec plusieurs cartes réseau, j'ai pensé à faire un script avec une boucle for :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| function reseau()
{
for VAR in TB1=`cat /proc/net/dev | grep eth: | awk '{print $10}'` | sleep 60 | TB2=`cat /proc/net/dev | grep eth: | awk '{print $10}'`
do
T=$(echo "(($TB2 - $TB1) / 60) / 100" | bc)
echo "Charge réseau :"
echo "Bande passante : $T Kbits/s"
echo
echo
done
} |
Le soucis, sans même encore avoir testé ce code, je sais qu'il ne fonctionnera pas, je l'ai écris pour vous expliquez se que j'aimerai faire (si s'est réalisable). Je ne sais pas comment gérer le for VAR in [commandes] et pouvoir récupérer mes variables TB1 et TB2...
Savez vous comment je peux faire ?
Merci d'avance
Arnaud