linux中ping带时间及打印内容到文件

本文介绍如何使用Ping命令结合Linux管道功能实现定期Ping指定IP地址并记录时间戳的方法。通过两个实例,展示了如何设置Ping的时间间隔及如何将Ping结果输出到文件中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ping命令就不多说了,-i是时间间隔,-c是ping的次数

这种是每隔30秒ping一次,并在后面显示时间:

ping 192.168.30.123 -i 30 | awk '{ print $0"\t" strftime("%H:%M:%S",systime()) } '

这种是把上面ping记录到文件中

ping 192.168.30.123 -i 30 | awk '{ print $0"\t" strftime("%H:%M:%S",systime()) } ' > ping.log



### 如何在 `ping` 命令中显示时间戳或精确的响应时间 #### 使用标准 `ping` 命令 默认情况下,在大多数操作系统上运行的标准 `ping` 命令会自动显示每次 ICMP 请求的往返时间 (RTT),即响应时间。这个时间通常以毫为单位展示,例如: ``` Reply from 8.8.8.8: bytes=32 time=15ms TTL=117 ``` 这里的 `time=15ms` 就是响应时间[^1]。 然而,如果希望更精确地记录每条请求的具体时间(如有日期和时间戳),可以结合其他工具实现这一目标。 --- #### 结合脚本记录时间戳 可以通过编写简单的批处理文件或 Shell 脚本来扩展 `ping` 的功能并附加时间戳。以下是具体方法: ##### 在 Windows 中使用 Batch 文件 下面是一个示例 `.bat` 文件,它会在每次 Ping 成功后打印当前时间和 RTT 到控制台以及日志文件中: ```batch @echo off setlocal enabledelayedexpansion for /L %%i in () do ( set "timestamp=" for /f "tokens=*" %%a in ('ping -n 1 google.com ^| findstr Reply') do ( call :get_timestamp timestamp echo !timestamp! - %%a >> ping_log.txt echo !timestamp! - %%a ) timeout /t 1 > nul ) goto :eof :get_timestamp set "%~1=%date% %time%" exit /b ``` 此脚本通过循环调用 `ping` 和自定义的时间戳函数来完成任务。 ##### 在 Linux/Unix 系统下利用 Bash Scripting 对于类 Unix 环境中的用户来说,可以用类似的逻辑创建一个 bash shell script 来达到相同效果: ```bash #!/bin/bash while true; do result=$(ping -c 1 google.com | grep 'bytes') if [[ $result ]]; then current_time=$(date "+%Y-%m-%d %H:%M:%S") echo "$current_time - $result" echo "$current_time - $result" >> ping_log.txt fi sleep 1 done ``` 上述代码片段同样实现了持续监控网络连通性的目的,并且增加了详细的日志记录能力[^4]。 --- #### 使用第三方工具增强功能 除了修改现有命令外,还可以考虑采用专门设计用于高级诊断用途的应用程序,比如 psping 提供的功能就非常强大。Psping 支持 TCP 及 UDP 测试模式下的延迟统计分析等功能[^3]。 尽管如此,值得注意的是这些额外特性可能并不总是必要的——除非有特殊需求,否则原生解决方案往往已经足够满足日常运维工作所需的信息采集要求。 --- #### 总结 要让普通的 `ping` 输出时间戳或者更加精准的测量数据,最简便的办法就是借助外部编程手段加以改造;而对于那些追求极致性能评估场景,则推荐选用专业的网络探测软件作为替代方案之一。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值