我已经在 Google 上搜索了一段时间,试图找到一个可以输出 wifi(en0)总 kb/s 输入和输出的终端命令。
该命令不能使用 sudo,因此 lsof 不行。
我尝试使用带有 -w 选项的 netstat,但该命令将由自动刷新的脚本运行,因此与使用 -w 发生冲突。
我的目标是复制活动监视器的输出data sent/sec
,但使用每秒可以重复一次的终端命令。
答案1
netstat -w 1
正如您所说,监控每秒网络流量的最简单方法是使用。
但是,您似乎想要一些其他脚本,该脚本每秒被调用一次,并且可能正在解析 netstat 的输出?
如何将 netstat 的输出通过管道传输到文件,例如netstat -w 1 > /tmp/netstat_output.txt &
?运行一次(或作为启动代理),然后让其他脚本检查输出(可能像tail -1 /tmp/netstat_output.txt
)。如果您的脚本确实每秒重复/调用一次,则有可能您会读取同一行两次(如果脚本两次运行之间的时间增量短于 netstat 输出的时间增量)。
最简单的选择是netstat -w 1
,只让 netstat 进行刷新,而不让调用脚本重复/刷新。