DSL-status über LCD-Display anzeigen

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
schwen
Beiträge: 26
Registriert: 25.07.2004 15:11:49
Wohnort: Essen

DSL-status über LCD-Display anzeigen

Beitrag von schwen » 25.07.2004 15:16:31

Hallo,

ich hab nen LCD display an meinen router angeschlossen, das auch soweit funktioniert. (mit dem lcd.o modul, also echo "XXXX" >/dev/lcd).

nun möcht ich gerne folgendes darauf anzeigen lassen:

1. Zeile: Datum/Zeit (soweit kein problem)

2. Zeile: die IP von PPP0 (wie bekomm ich die raus, so dass ich sie mit "echo" ans lcd übergeben kann? ifconfig, grep inet addr, dann irgendwie abschneiden ???)

3. Zeile: aktuelle up- und download geschwindigket in kb/s (siehe 2. Zeile, wie bekomm ich die raus?)

4. Zeile CPU auslastung in % + Balken (wie bekomm ich die cpu-auslastung raus? am besten im format 0-100)



wär kuhl wenn mir da jemand helfen könnte, wie gesagt, alles so das ich es mit "echo" übergeben kann.

danke :-)

Benutzeravatar
blackm
Moderator und Co-Admin
Beiträge: 5921
Registriert: 02.06.2002 15:03:17
Lizenz eigener Beiträge: MIT Lizenz

Re: DSL-status über LCD-Display anzeigen

Beitrag von blackm » 25.07.2004 15:45:45

schwen hat geschrieben:2. Zeile: die IP von PPP0 (wie bekomm ich die raus, so dass ich sie mit "echo" ans lcd übergeben kann? ifconfig, grep inet addr, dann irgendwie abschneiden ???)
Das geht mit folgendem Script

Code: Alles auswählen

#! /usr/bin/perl                                                                                      

@out = `/sbin/ifconfig`;
$c1 = 0;
foreach $b (@out){
    $c1_1 = $c1 + 1;
    if($b =~ /ppp[0-9]+/){
        $out[$c1_1] =~ /^.*?:([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}).*$/;
        $inet_ip = $1;
    }
    $c1++;
}

print $inet_ip, "\n";
Gibt da bestimmt noch 100 andere Moeglichkeiten...
3. Zeile: aktuelle up- und download geschwindigket in kb/s (siehe 2. Zeile, wie bekomm ich die raus?)
Schau dir mal pppstats an, vielleicht gibt es ja diese Werte aus...

by, Martin
Schöne Grüße

Martin

Neu im Forum? --> https://wiki.debianforum.de/debianforum ... tensregeln
Log- und Konfigurationsdatein? --> pastebin.php
Forum unterstützen? --> https://wiki.debianforum.de/debianforum.de/Spenden

schwen
Beiträge: 26
Registriert: 25.07.2004 15:11:49
Wohnort: Essen

Beitrag von schwen » 25.07.2004 16:03:40

das is schonmal gut, danke
mal sehn was man mit pppstats so rausbekommt

schwen
Beiträge: 26
Registriert: 25.07.2004 15:11:49
Wohnort: Essen

Beitrag von schwen » 25.07.2004 17:03:54

so, ich könnt die geschwindigkeit theoretisch mit den angaben von /proc/net/dev ausrechnen, oder?!

also im abstand von 1 sek die übermittelten bytes abfragen und dann bytes(1sekspäter)-bytes/1024= kb/s oder?

bloß wie krieg ich das hin?! :(

mit cat /proc/net/dev |grep "ppp0" krieg ich ja nur die ganze zeile...im grunde das gleiche problem wie bei der ip.

schwen
Beiträge: 26
Registriert: 25.07.2004 15:11:49
Wohnort: Essen

Beitrag von schwen » 25.07.2004 20:05:10

fallses jemanden interessiert:

Code: Alles auswählen

mon_time=1
mon_device=ppp0
mon_accuracy=2

 t_old_in=`cat /proc/net/dev | grep $mon_device | sed 's/.*:\(.*\)/\1/' | awk '{print $1}' | bc`
         t_old_out=`cat /proc/net/dev | grep $mon_device | sed 's/.*:\(.*\)/\1/' | awk '{print $9}' | bc`
         sleep $mon_time
         t_new_in=`cat /proc/net/dev | grep $mon_device | sed 's/.*:\(.*\)/\1/' | awk '{print $1}' | bc`
         t_new_out=`cat /proc/net/dev | grep $mon_device | sed 's/.*:\(.*\)/\1/' | awk '{print $9}' | bc`

         t_diff_in=`echo "($t_new_in-$t_old_in)/1024" | bc -l | sed "s/\(.*\..\{$mon_accuracy\}\).*/\1/"`
         t_diff_out=`echo "($t_new_out-$t_old_out)/1024" | bc -l | sed "s/\(.*\..\{$mon_accuracy\}\).*/\1/"`
t_diff_in und t_diff_out sind dann jeweils in und out speed...

schwen
Beiträge: 26
Registriert: 25.07.2004 15:11:49
Wohnort: Essen

Beitrag von schwen » 27.07.2004 12:35:45

hm, kann mir jemand sagen wieso mir bei vollem download (~88kb/s) auf dem router über 100kb/s angezeigt wird!? maximal sinds glaub ich 102kb/s...das gleiche beim upload, der ist auch höher als er sein sollte...ist das mit sleep zu ungenau oder woran kann das liegen?

Antworten