You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerShell中将丢包率与平均往返时延分别存入变量?

PowerShell提取Ping丢包率与平均往返时间的实现方案

完全可行,以下是具体实现步骤:

  1. 执行Ping命令并捕获输出
    指定目标地址执行Ping请求,将完整输出捕获到变量中(示例以Google DNS 8.8.8.8为例,发送4次请求):

    $pingOutput = ping -n 4 8.8.8.8 | Out-String
    
  2. 提取丢包率到独立变量
    通过正则表达式从输出中匹配丢包率数值,并存入变量:

    # 英文环境匹配规则
    $packageLoss = [regex]::Match($pingOutput, '(\d+)% loss').Groups[1].Value + '% loss'
    
    # 若系统是中文环境,替换为以下规则
    # $packageLoss = [regex]::Match($pingOutput, '(\d+)% 丢失').Groups[1].Value + '% loss'
    
  3. 提取平均往返时间到独立变量
    用正则匹配平均往返时间的数值,存入变量:

    # 英文环境匹配规则
    $avgRoundTrip = [regex]::Match($pingOutput, 'Average = (\d+) ?ms').Groups[1].Value + ' ms'
    
    # 若系统是中文环境,替换为以下规则
    # $avgRoundTrip = [regex]::Match($pingOutput, '平均 = (\d+) ?ms').Groups[1].Value + ' ms'
    
  4. 按指定格式输出
    直接拼接两个变量输出即可:

    Write-Host "$packageLoss, $avgRoundTrip"
    

执行以上代码后,就能得到类似「0% loss, 14 ms」的输出,且丢包率和平均往返时间分别存储在$packageLoss和$avgRoundTrip两个独立变量中。

内容的提问来源于stack exchange,提问作者user18209625

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 13:33:15