擅长:python、mysql、java
<p>在/proc/net/dev中有字节和数据包计数器,因此:</p>
<pre><code>import time
last={}
def diff(col): return counters[col] - last[iface][col]
while True:
print "\n%10s: %10s %10s %10s %10s"%("interface","bytes recv","bytes sent", "pkts recv", "pkts sent")
for line in open('/proc/net/dev').readlines()[2:]:
iface, counters = line.split(':')
counters = map(int,counters.split())
if iface in last:
print "%10s: %10d %10d %10d %10d"%(iface,diff(0), diff(8), diff(1), diff(9))
last[iface] = counters
time.sleep(1)
</code></pre>