在命令行上获取当前无线下载和上传速度

在命令行上获取当前无线下载和上传速度

是否可以检索我桌面上的当前下载速度?例如,如果我要下载一个文件,网卡将报告其下载文件的速度 - 我已经看到在 Windows 的各种应用程序中都可以做到这一点。

我试过使用,nload但那是一个连续程序。我正在寻找一个可以输出整数的简单命令,仅此而已。

答案1

如果您使用的是 Ubuntu,此命令将打印出信息以帮助您计算速度。

cat /proc/net/dev

上述命令行的示例输出如下:

$ cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo: 1094736293 1076693    0    0    0     0          0         0 1094736293 1076693    0    0    0     0       0          0
  eno1: 132120552758 616841563    0    0    0     0          0   1323233 376143801828 548682127    0    0    0     0       0          0
wlp2s0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0

从那里,您可以使用grep,或awk,或cut,或正则表达式来仅过滤您想要看到的接口(即无线接口)。

例如,如果您的无线接口是 eno1,则使用此命令行将打印出当前每秒接收/传输的千字节数:

awk '{i++; recv[i]=$1; trans[i]=$2}; END{print (recv[2]-recv[1])/1000 "KBps " (trans[2]-trans[1])/1000 " KBps"}' <(cat /proc/net/dev | grep eno1 | awk -F' ' '{print $2 " " $10}'; sleep 1; cat /proc/net/dev | grep eno1 | awk -F' ' '{print $2 " " $10}')

相关内容