服务器网络偶尔会出现“偶发延迟飙高”的情况,但往往持续时间很短,很难通过常规 ping 发现问题。本文介绍一个 7 行可直接运行的 Shell 脚本,可以实时捕获服务器网络延迟波动,并将异常延迟记录到日志,便于后续排查。

  脚本轻量、不依赖第三方工具,适合 Linux 运维、服务器管理员、甚至家庭 NAS 用户。

  用 7 行 Shell 脚本实时监控服务器网络延迟波动

  一、环境准备

  • Linux 系统(CentOS / Ubuntu / Debian 等均可)
  • 已安装 ping(系统自带)
  • 普通用户即可运行,不需要 root

      二、7 行网络延迟监控脚本

      创建文件:net_delay_watch.sh

      #!/bin/bash

      TARGET=8.8.8.8

      ping $TARGET | while read l; do

       d=$(echo $l | grep -o 'time=[0-9.]*' | cut -d= -f2)

       [[ $d > 80 ]] && echo "$(date) Delay:$d ms" >> delay.log

       echo "Now:$d ms"

      done

      脚本行数:7 行

      三、运行方式

      chmod +x net_delay_watch.sh

      ./net_delay_watch.sh

      你将看到实时延迟输出:

      Now:22.5 ms

      Now:24.2 ms

      Now:97.6 ms ← 超过 80ms,会自动记录到 delay.log

      四、查看异常日志

      脚本会将异常延迟(>80ms)写入 delay.log:

      cat delay.log

      输出示例:

      Wed Dec 07 14:20:55 CST 2025 Delay:105.3 ms

      Wed Dec 07 14:21:11 CST 2025 Delay:92.8 ms