如何以位而不是字节获取Linux接口流量详细信息?

时间:2016-04-24 11:49:33

标签: shell awk sh ifconfig

我试图通过运行以下命令获取Linux机器界面中的流量详细信息:

/sbin/ifconfig eth0 |grep bytes|cut -d":" -f2|cut -d" " -f1

它以字节显示结果,但我希望结果以位为单位。我试过像这样的awk:

/sbin/ifconfig eth0 |grep bytes|cut -d":" -f2|cut -d" " -f1 | awk '{ SUM = $1*8; print SUM}'

但结果显示如下: 1.488e + 11

你能帮我修改一下这个命令吗?我需要完整数字的结果,例如: 18600143106

谢谢。

1 个答案:

答案 0 :(得分:1)

除了更改输出格式外,当您使用awk时,您不需要添加其他十几个工具和管道:

/sbin/ifconfig eth0 | awk -F'[: ]' '/bytes/{sum = $2*8; printf "%d\n", sum}'

由于您没有发布ifconfig的输出,我只是在阅读您的脚本时猜测$2是您需要的字段。如果没有,请选择正确的。