AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / computer / Perguntas / 1578888
Accepted
denn0n
denn0n
Asked: 2020-08-19 15:47:07 +0800 CST2020-08-19 15:47:07 +0800 CST 2020-08-19 15:47:07 +0800 CST

Como você obtém a quantidade de largura de banda usada de uma interface de rede e a armazena em uma variável?

  • 772

Instalei o iftop e gostaria de passar o valor total para uma variável como exemplo:

iftop -i mydevice 

                12.5Kb          25.0Kb          37.5Kb          50.0Kb    62.5Kb
└───────────────┴───────────────┴───────────────┴───────────────┴───────────────
sip                        => 188.241.227.198             2.53Kb  1.27Kb  1.27Kb
                           <=                            2.63Kb  1.31Kb  1.31Kb
















────────────────────────────────────────────────────────────────────────────────
TX:             cum:    648B    peak:   2.53Kb  rates:   2.53Kb  1.27Kb  1.27Kb
RX:                     673B            2.62Kb           2.63Kb  1.31Kb  1.31Kb
TOTAL:                 1.29KB           5.16Kb           5.16Kb  2.58Kb  2.58Kb

bem, eu poderia colocar aqui como texto, sim! mas eu fiz

nohup iftop -i enp0s26y7a6 > iftop_output.txt &

Quando uso cato arquivo mostra o que salvei, mas quando abro o arquivo com nano, exibe muito código que não entendo. Tentei pesquisar o valor "TOTAL" nesse código, mas não sei como poderia colocar esse valor em uma variável.

linux networking
  • 2 2 respostas
  • 116 Views

2 respostas

  • Voted
  1. xenoid
    2020-08-20T00:12:38+08:002020-08-20T00:12:38+08:00

    Todas as informações necessárias estão no pseudo arquivo /proc/net/devque você pode ler/pesquisar em um script. Por exemplo, para obter as contagens de sua interface ethernet (enpo-something) em um script bash:

    read _ received _ _ _ _ _ _ _ transmitted _ < <(grep enp0 /proc/net/dev)
    
    • 1
  2. Best Answer
    denn0n
    2020-08-19T20:16:34+08:002020-08-19T20:16:34+08:00

    Fiz a instalação vnstate uso o mesmo processo, explico:

    vnstat é um daemon que está armazenando o uso na rede o tempo todo e é muito completo no exemplo da consulta, estou interessado em saber a quantidade total de largura de banda usada e uma interface específica vamos chamar de mydevice depois de instalar o vnstat e iniciá-lo você corre depois de um tempo, vnstat está armazenando dados!

    vnstat -i mydevice  
    
    Database updated: Wed Aug 19 11:38:48 2020
    
       mydevice since 08/18/2020
    
              rx:  9.63 MiB      tx:  6.73 MiB      total:  16.37 MiB
    
       monthly
                         rx      |     tx      |    total    |   avg. rate
         ------------------------+-------------+-------------+---------------
           Aug '20      9.63 MiB |    6.73 MiB |   16.37 MiB |    0.08 kbit/s
         ------------------------+-------------+-------------+---------------
         estimated        14 MiB |       9 MiB |      23 MiB |
    
       daily
                         rx      |     tx      |    total    |   avg. rate
         ------------------------+-------------+-------------+---------------
         yesterday      1.63 MiB |     873 KiB |    2.48 MiB |    0.24 kbit/s
             today      8.00 MiB |    5.88 MiB |   13.88 MiB |    2.71 kbit/s
         ------------------------+-------------+-------------+---------------
         estimated        16 MiB |      10 MiB |      26 MiB |
    

    então, aí você tem a quantidade TOTAL de largura de banda usada no momento dado no

    estimated        16 MiB |      10 MiB |      26 MiB |
    

    3ª coluna, então eu entendo como

    vnstat -i mydevice -d 2>&1 | grep estimated | cut -d '|' -f 3
    

    e isso é impressão

    26 MiB
    

    é isso, então você pode fazer onde precisar ou quiser com ele! plus o vnstat tem umas opções bem interessantes para te informar a largura de banda dia a dia, acabei de instalar mas é muito bom

     vnStat 1.15 by Teemu Toivola <tst at iki dot fi>
    
             -q,  --query          query database
             -h,  --hours          show hours
             -d,  --days           show days
             -m,  --months         show months
             -w,  --weeks          show weeks
             -t,  --top10          show top 10 days
             -s,  --short          use short output
             -u,  --update         update database
             -i,  --iface          select interface (default: eth0)
             -?,  --help           short help
             -v,  --version        show version
             -tr, --traffic        calculate traffic
             -ru, --rateunit       swap configured rate unit
             -l,  --live           show transfer rate in real time
    
    See also "--longhelp" for complete options list and "man vnstat".
    
    • -1

relate perguntas

  • Win10 1803: Como tornar o ponto de acesso móvel uma rede privada?

  • Como o nc identifica nomes de serviço

  • execute o contêiner do docker como root

  • Como ativar o sensor de impressão digital no domínio e no diretório ativo do Linux

  • Como alterar permanentemente Ctrl + C para Ctrl + K no CentOS 7?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Como posso reduzir o consumo do processo `vmmem`?

    • 11 respostas
  • Marko Smith

    Baixar vídeo do Microsoft Stream

    • 4 respostas
  • Marko Smith

    O Google Chrome DevTools falhou ao analisar o SourceMap: chrome-extension

    • 6 respostas
  • Marko Smith

    O visualizador de fotos do Windows não pode ser executado porque não há memória suficiente?

    • 5 respostas
  • Marko Smith

    Como faço para ativar o WindowsXP agora que o suporte acabou?

    • 6 respostas
  • Marko Smith

    Área de trabalho remota congelando intermitentemente

    • 7 respostas
  • Marko Smith

    O que significa ter uma máscara de sub-rede /32?

    • 6 respostas
  • Marko Smith

    Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows?

    • 1 respostas
  • Marko Smith

    O VirtualBox falha ao iniciar com VERR_NEM_VM_CREATE_FAILED

    • 8 respostas
  • Marko Smith

    Os aplicativos não aparecem nas configurações de privacidade da câmera e do microfone no MacBook

    • 5 respostas
  • Martin Hope
    CiaranWelsh Como posso reduzir o consumo do processo `vmmem`? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Pesquisa do Windows 10 não está carregando, mostrando janela em branco 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 Por que uma conexão de Internet gigabit/s via cabo (coaxial) não oferece velocidades simétricas como fibra? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    fixer1234 O "HTTPS Everywhere" ainda é relevante? 2019-10-27 18:06:25 +0800 CST
  • Martin Hope
    andre_ss6 Área de trabalho remota congelando intermitentemente 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney Por que colocar um ponto após o URL remove as informações de login? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension Ponteiro do mouse movendo-se nas teclas de seta pressionadas no Windows? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca Todos os meus complementos do Firefox foram desativados repentinamente, como posso reativá-los? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK É possível criar um código QR usando texto? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 Altere o nome da ramificação padrão do git init 2019-04-01 06:16:56 +0800 CST

Hot tag

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve