vnstat: stampa l'attività di rete corrente su un file


1

Come posso stampare l'output di vnstat -lsu un file? quello che ho provato:

vnstat -l &> file

ma si blocca e basta

Risposte:


4

Rimuovi l' lopzione. Dalla vnstatpagina man:

   -l, --live mode
          Display current transfer rate for the selected interface in real time until interrupted. Statis
          tics  will be shown after interruption if the runtime was more than 10 seconds. An optional mode
          parameter can be used to select between the displaying of packets per second (mode 0) and trans
          fer  counters  (mode  1) during execution.  --style can also be used to affect the layout of the
          output.

Quindi, -lrende l' vnstatoutput di visualizzazione in "modalità live", in costante aggiornamento, ecco perché non è possibile acquisire l'output. Se si desidera un formato facilmente analizzabile, utilizzare

vnstat --dumpdb

Per salvare l'output standard basta

vnstat > log.txt

Se quello che vuoi è l'attuale velocità di upload e download, vnstatnon è lo strumento giusto per il lavoro. Prova sardal sysstatpacchetto (vedi man sarper maggiori informazioni):

sudo apt-get install sysstat 
sudo sar -n DEV 1 1

Per estrarre l'attuale * download e upload rate per l'interfaccia wlan0di saruscita 's fare:

sudo sar -n DEV 1 1 | grep wlan0 | tail -n 1 | gawk '{print "Down: "$5,"Up: "$6}'

* Cosa significa "attuale"? sar(e qualsiasi altro metodo) richiederà alcuni millisecondi per generare output.


ma in realtà ho bisogno dell'attività di rete corrente totale. questo stamperà le statistiche di oggi, ieri, questo mese ecc.
teslasimus

Cosa intendi? Che cos'è l'attività di rete "attuale"? Intendi la velocità di upload / download ?
terdon,

sì. upload / download ...
teslasimus

Vedi la risposta aggiornata, vnstat non è lo strumento giusto per il lavoro.
terdon,

0

Non so se vuoi stampare solo il riepilogo finale su file da un certo periodo in cui stai per monitorare l'attività di rete, ma puoi imbrogliare in questo modo:

vnstat -l -i <device> >> dump.txt

L'unico problema è che vnstat scriverà l'output su file ogni secondo, quindi non è il modo più conveniente. Per un monitoraggio continuo con registro per circa un secondo, terdon ha risposto alla tua domanda.


Ok, ma vnstatfai attenzione al problema che sovrascrive ripetutamente la riga di stato usando backspaces, quindi nell'output vedrai solo l'ultimo stato. Puoi sostituire le sequenze di backspaces ed espandere gli stati su singole righe usando ad esempio:sed -re $'s/\b[\b ]+\b/\\n/g' dump.txt
pabouk

Tnak è per un buon trucco;)
Michal Gonda,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.