kostenloser Webspace werbefrei: lima-city


Exec, Ifconfig ausgabe, Upload-volumen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    rick1993

    Kostenloser Webspace von rick1993

    rick1993 hat kostenlosen Webspace.

    Hallo

    Ich habe mal wieder ein Problem mit der funktion exec.
    Ich schreibe gerade testweise eine kleine statusanzeige für meinen Router.(ubuntu)
    Dabei will ich eine anzeige mit Down und Up -Load traffic machen.

    Da der Router per PPPOE verbunden ist, stellt dies kein wirkliches Problem dar. Mit der ausgabe "ifconfig ppp0" kann ich meine eigentschaften des für PPPOE verwendeten Interfaces sehen.

    Hier ist einmal die Config meines ppp0 interfaces:

    ppp0      Link encap:Point-to-Point Protocol
              inet addr:<geheim ;)>  P-t-P:<auch geheim>  Mask:255.255.255.255
              UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1492  Metric:1
              RX packets:1008953 errors:0 dropped:0 overruns:0 frame:0
              TX packets:645036 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:3
              RX bytes:1357900122 (1.2 GB)  TX bytes:51073740 (48.7 MB)


    Hierbei steht RX bytes für den DOWNLOAD traffic.
    TX bytes steht für den UPLOAD traffic.


    Nun habe ich einmal angefangen. Ich lese also mit folgendem skript meine nDOWNload traffic aus:

    <?php
    
      $down_traffic;
      exec("echo `/sbin/ifconfig ppp0 2> /dev/null | awk '/RX bytes:/ {print $2}' | sed 's/bytes://'`", $down_traffic);
    
      echo round($down_traffic[0]/(1024*1024), 2) ."(MB)";
    
    ?>

    So, das funktioniert einwandfrei; Ich bekomme in der php datei sauber meine downgeloadeten trafiic aufgelistet.

    Nun dachte ich mir, ist das ja ganz einfach, Ersetze einfach das RX bei RX traffic durch das TX bei TX traffic

    Nun sieht mein skript für das UPLOAD volumen folgendermaßen aus:

    <?php
    
      $up_traffic;
      exec("echo `/sbin/ifconfig ppp0 2> /dev/null | awk '/TX bytes:/ {print $2}' | sed 's/bytes://'`", $up_traffic);
    
      echo round($up_traffic[0]/(1024*1024), 2) ."(MB)";
    
    ?>


    Nun ist mein Problem:

    Ich bekomme auch bei dem upload volumen skript mein DOWNLOAD volumen angezeigt? -- Völlig komisch meines erachtens nach. Kennt jemand eine Lösung? bzw. kann mir denn jemand helfen?

    Vielen dank schonmal, dass ihr euch die zeit nehmt.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. s******s

    Hallo rick1993,

    das Problem liegt an awk. Es scheint zeilenweise zu arbeiten. Bei mir funktioniert folgendes:

    Down: 
    <?php
    
      $down_traffic;
      exec("/sbin/ifconfig ppp0 2> /dev/null | awk '/bytes/ {print $2}' | sed 's/bytes://'", $down_traffic);
    
      echo round($down_traffic[0]/(1024*1024), 2) ."(MB)";
    
    ?>
    <br>Up: 
    <?php
    
      $up_traffic;
      exec("/sbin/ifconfig ppp0 2> /dev/null | awk '/bytes/ {print $6}' | sed 's/bytes://'", $up_traffic);
    
      echo round($up_traffic[0]/(1024*1024), 2) ."(MB)";
    
    ?>



    Gruß
    steffens
  4. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!