shell script de awk para tarjetas de red de monitoreo de tráfico en tiempo real (dos aplicaciones comunes)

  

obtener el tráfico a través de tarjeta de herramientas de terceros que hay que ser muy claro. De hecho, el efecto se puede lograr mediante secuencias de comandos. A continuación se muestran los datos compilados en mi trabajo personal. El siguiente es un script de shell para contar el tráfico NIC.


  • El principio:

    [chengmo @ localhost ~] $ cat /proc /net /devInter- |    Recibir |   Transmitface | Los paquetes de bytes fallan la fotodifusión comprimida de quince fotogramas | paquetes de bytes yerra gota fifo COLLS portador lo comprimido: 1068205690 1288942839 0 0 0 0 0 0 1068205690 1288942839 0 0 0 0 0 0 eth0: 91581844 334 143 895 0 0 0 0 0 145 541 676 4205113078 3435231517 0 0 0 0 0 0

    flujo proc //dev archivo almacena información de tarjeta de red total a través de intervalos espaciados, en la tarjeta y un disco juntos. La tasa real se obtiene antes de restar.


  • código del programa :.

    awk 'BEGIN {OFMT = "% 3F "; devf = " /proc /net /dev "; while ((" cat " devf) |  getline) {if ($ 0 ~ /: /&&($ 10 + 0) > 0) {split ($ 1, tarr, ": "); net [Tarr [1]] = $ 10 + Tarr [2 ]; Tarr impresión [1], $ 10 + Tarr [2];}} cerca (devf); while ((sistema (" del sueño 1 ")) > = 0) {sistema (" claro "), mientras (getline < devf) {if ($ 0 ~ /: /&&($ 10 + 0) > 0) {split ($ 1, tarr, ": "), si (Tarr [1] en la red) {Tarr impresión [1], ": ", ($ 10 + Tarr [2] -net [Tarr [1]]) * 8/1024, " kb /s "; neto [Tarr [1]] = $ 10 + Tarr [2];}}} cerca (devf);}} '

    Descripción: el primero se obtiene mientras que el valor inicial total de $ 1 es una tarjeta de tráfico, la tarjeta es de $ 10 en el flujo. El segundo tiempo comenzará una vez cada 1 segundo. Calcule la diferencia de flujo total para obtener un flujo promedio por segundo.

    Nota: Lea los archivos línea por línea a través de getline, debe cerrar. De lo contrario, los datos no se pueden obtener en el segundo bucle while.

  • Resultados en ejecución:


  • Copyright © Conocimiento de Windows All Rights Reserved