实时查看linux下的网卡流量,脚本内容如下:

复制代码 代码示例:

#!/bin/bash

#filename interface.sh

eth=eth0

RXpre=$(ifconfig ${eth} | grep bytes | awk  '{print $2}'| awk -F":" '{print $2}')

TXpre=$(ifconfig ${eth} | grep bytes | awk '{print $6}' | awk -F":" '{print $2}')

sleep 1

RXnext=$(ifconfig ${eth} | grep bytes | awk  '{print $2}'| awk -F":" '{print $2}')

TXnext=$(ifconfig ${eth} | grep bytes | awk '{print $6}' | awk -F":" '{print $2}')

echo RX ----- TX

echo "$(((${RXnext}-${RXpre})/1024))KB/s   $(((${TXnext}-${TXpre})/1024))KB/s"

代码说明:

1、默认监视eth0流量,换算成KB所以精度不高,需要精确数据时可以不除以1024。

2、限于sleep命令的间隔最小为秒,本脚本检测到的数据实时性仅作参考。

调用方法:

复制代码 代码示例:

watch -n 1 ./interface.sh

即可开始监看流量,按ctrl+c中断监测,退出。

以上用到了watch命令,可以实时显示监测结果到屏幕上。

如下图:

以上代码,只能监测在eth0上,且间隔只能为1秒,因为脚本中固定了这些参数值。

下面是此脚本的改进版,可以接收二个参数值,一是要监测的网卡接口,比如eth0,另一个参数是监测的间隔时间。

代码如下:

复制代码 代码示例:

#!/bin/bash

#filename interface.sh

usage() {

echo "Useage : $0"

echo "eg. sh $0 eth0 3"

exit 1

}

if [ $# -lt 2 ]

then

usage

fi

eth=$1

timer=$2

eth=eth0

RXpre=$(ifconfig ${eth} | grep bytes | awk  '{print $2}'| awk -F":" '{print $2}')

TXpre=$(ifconfig ${eth} | grep bytes | awk '{print $6}' | awk -F":" '{print $2}')

sleep $timer

RXnext=$(ifconfig ${eth} | grep bytes | awk  '{print $2}'| awk -F":" '{print $2}')

TXnext=$(ifconfig ${eth} | grep bytes | awk '{print $6}' | awk -F":" '{print $2}')

echo RX ----- TX

echo "$(((${RXnext}-${RXpre})/1024))KB/s   $(((${TXnext}-${TXpre})/1024))KB/s"

调用示例:

以上多次用到watch命令,它主要用来实时监测命令的运行结果。

下面补充下watch命令的用法。

watch命令。

Usage: watch [-dhntv] [--differences[=cumulative]] [--help] [--interval=] [--no-title] [--version]

-d, --differences[=cumulative]        highlight changes between updates

(cumulative means highlighting is cumulative)

-h, --help                            print a summary of the options

-n, --interval=              seconds to wait between updates

-v, --version                         print the version number

-t, --no-title                        turns off showing the header

watch -- 监测命令的运行结果

watch是一个非常实用的命令,基本所有的Linux发行版都带有这个小工具,watch可以实时监测一个命令的运行结果。

在Linux下,watch是周期性的执行下个程序,并全屏显示执行结果。

-d, --differences[=cumulative] 高亮显示变动

-n, --interval= 周期(秒)

如:

复制代码 代码示例:

watch -n 1 -d netstat -ant

其它操作:

切换终端: Ctrl+x

退出watch:Ctrl+g

复制代码 代码示例:

watch -n 1 -d 'pstree|grep http'

每隔一秒高亮显示http链接数的变化情况。

后面接的命令若带有管道符,需要加''将命令区域归整。

在查看攻击时,经常使用的方式如下:

实时查看模拟攻击客户机建立起来的连接数,使用:

复制代码 代码示例:

watch 'netstat -an | grep:21 | \ grep| wc -l'

查看模拟攻击客户机被 DROP 的数据包数:

复制代码 代码示例:

watch 'iptables -L -n -v | \grep'

linux 网卡流量脚本,实时查看Linux网卡流量的shell脚本分享(图文)相关推荐

  1. linux 流量 脚本,实时查看linux网卡流量脚本

    1.本脚本可自定义欲查看接口,精确到小数,并可根据流量大小灵活显示单位. 2.此脚本的采集间隔为1秒. 3.此脚本不需要额外再安装软件,可在急用情况下应付一下,比如临时想看一下是否有流量通过,大概为多 ...

  2. linux脚本查看系统内存,二个linux下查看内存使用情况的shell脚本()

    摘要 腾兴网为您分享:二个linux下查看内存使用情况的shell脚本(),政务易,悦作业,优化大师,王者荣耀等软件知识,以及单向历app,优路教育app,kimoji,开关电源设计软件,皮皮高清影视 ...

  3. 怎么快速搜索linux的日志,如何快速查看Linux日志?

    因为在生产环境会遇到很多问题,那么最快的定位方式莫过于去看日志,我们都知道服务器每天会产生大量的日志,那么如何快速的定位也就是最关键的. 本文介绍六种查看日志的命令:tail.head.cat.mor ...

  4. 学习笔记之Linux Shell脚本教程:30分钟玩转Shell脚本编程

    Linux Shell脚本教程:30分钟玩转Shell脚本编程 http://c.biancheng.net/cpp/shell/ 转载于:https://www.cnblogs.com/pegasu ...

  5. Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本)

    Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本) 转载于:https://www.cnblogs.com/zhehan54/p/9549017.html

  6. linux脚本好难,如何做才能学好Shell脚本的经验总结

    大多同学反馈Shell脚本不容易学,感觉学完了Shell脚本这部分课程,还是不能写出脚本来. 我来帮大家分析一下原因,并解说如何做才能学好Shell脚本. 之所以你觉得难学,写不出东西来.是因为,太生 ...

  7. Linux下将数据文件的指定域读取到shell脚本中

    Linux下将数据文件的指定域读取到shell脚本中 这个例子说明了怎样在Linux下shell脚本中从数据文件读取特定的域(field)并进行操作.例如,假设文件employees.txt的格式是{ ...

  8. 用shell脚本实时查看网卡流量

    用shell脚本可以实现对网卡bytes和packets的双重监控,每隔一秒输出一次,最后输出的是对应IP地址的流量情况. #!/bin/bash while true don=1 while (($ ...

  9. linux查看哪个网卡插着网线,查看linux系统下网卡是否连接网线的状态

    查看Linux下网卡状态或是否连接 一.通过mii-tool指令 [root@linuxzgf ~]# mii-tool eth0: negotiated 100baseTx-FD, link ok ...

最新文章

  1. 10分钟完成一个业务流程的发布
  2. C#全屏随机位置显示图片的小程序
  3. Operations on Numbers Strings
  4. Netty 框架学习(二):DelimiterBasedFrameDecoder和FixedLengthFrameDecoder
  5. Equipment download - individual object以及object structure创建细节
  6. 信息学奥赛一本通 1229:电池的寿命 | OpenJudge NOI 4.6 2469:电池的寿命
  7. 漫步数学分析八——集合边界
  8. 巧用PHP双$功能兼容线上线下配置文件
  9. python基础教程免费下载-《Python机器学习基础教程》高清版免费PDF下载
  10. 引用: 编写高性能 Web 应用程序的10个技巧
  11. angular源码分析 摘抄 王大鹏 博客 directive指令及系列
  12. 云桌面计算机被锁定如何解决,桌面布局已锁定怎么解除?电脑桌面便签布局锁定后怎么解除?...
  13. 常见HTTP状态码大全
  14. 2017网络安全方向学习总览(转载供本人查阅而已)
  15. 这些关于JAVA基础类的(常用关键字)你都了解了吗?还没搞明白的朋友建议收藏慢慢看~
  16. Codeforces Round #660 (Div. 2) B. Captain Flint and a Long Voyage
  17. 夜神模拟器无法连接网络的解决办法
  18. Java爬去教务系统后怎么发布_java实现-强智教务系统API文档-课程信息
  19. 计算机硕士论文的框架应该怎么写,计算机硕士论文提纲模板 计算机硕士论文框架怎样写...
  20. SSD的预留空间OP介绍

热门文章

  1. php 字节码查看,PHP-7.1 源代码学习:字节码在 Zend 虚拟机中的解释执行 之 概述...
  2. 大话互联网行业发展史
  3. 电脑里文件名称怎么快速重命名
  4. 简单了解Ruby与自学教程
  5. c++ 清空数组_第6章 见缝插圆(《C和C++游戏趣味编程》配套教学视频)
  6. Wget命令批量下载Openwrt源资源
  7. 书小宅之网页设计CSS3——圆角矩形
  8. 56个民族的sql、excel等资源
  9. cif和cip的区别_试比较CIF与CIP的异同点。 - 问答库
  10. 【沐风老师】3DMAX一键玻璃门生成器使用教程