iftop – 如何生成文本文件的输出?

iftop可以很好地查看由source-ip源端口destination-ip目标端口区分的实时带宽使用情况。

我正在使用它来查看哪个客户端的IP使用最多的带宽。 现在我想存储输出的地方。

iftop如此使用ncurses

iftop > log.txt 

不按预期工作,结果文件不可读。

有没有这样的工具可以用来输出到文本文件?

自iftop-1.0pre3(2014-01-01)以来,增加了文本输出模式。 这对任何试图parsingiftop输出的人来说都是非常有用的。

激活文本(批处理)模式的命令行选项是:

 -t use text interface without ncurses 

使用文本模式时,可以使用以下选项:

 -s num print one single text output afer num seconds, then quit -L num number of lines to print 

使用-h选项可获得iftop使用方面的帮助。

示例用法是:

 iftop -t > log.txt iftop -t -s 180 > log.txt 

如果你想让它在后台运行5个小时:

 iftop -t -s 18000 > log.txt & 

job命令检查后台作业。

iptraf可以logging这个级别的细节。 输出看起来像这样:

 Wed Apr 25 23:08:42 2012; UDP; eth0; 65 bytes; from 192.168.1.20:45061 to 192.168.1.254:53 Wed Apr 25 23:08:42 2012; UDP; eth0; 133 bytes; from 192.168.1.254:53 to 192.168.1.20:45061 Wed Apr 25 23:08:43 2012; UDP; eth0; 96 bytes; from 192.168.1.21:137 to 192.168.1.20:137 Wed Apr 25 23:08:44 2012; UDP; eth0; 472 bytes; from 192.168.1.21:1900 to 239.255.255.250:1900 Wed Apr 25 23:08:47 2012; ICMP; eth0; 159 bytes; from 192.168.1.20 to 173.176.222.82; dest unrch (port) 

似乎iftop无法输出到一个文本文件(有一个function请求,但尚未实现),在此期间看看类似于iftop,但允许输出一个CSV文件的bwm-ng工具。

以下是一个使用示例:

 bwm-ng -o csv -c 6 -T rate -I eth0 >> bandwidth.log