我想编写一个脚本,该脚本实际上ping另一台计算机,并且仅作为数字获得平均值。现在我有一个脚本,根据需要得到平均ping并显示它,但它有'ms'前缀,我想摆脱它。我似乎无法找到cut
等效(好吧,我确实找到了,但我不能使我现有的脚本并且它一起工作)已经在Windows中(默认情况下应该在cmd.exe中)
我的剧本:
FOR /F "usebackq skip=11 tokens=6 delims== " %i IN (`ping host2.internal`) DO @echo %i
我得到:197ms
,但我需要它看起来像:197
。
由于
答案 0 :(得分:1)
用
替换DO
部分
DO @set FOO=%i & echo %FOO:~0,-3%
这会将%i
的值分配给临时变量FOO
,以便您可以使用shell的子字符串提取功能(SET /?
进行说明)。我正在削减三个字符而不是两个字符,因为%i
包含一个尾随空格。
答案 1 :(得分:1)
这在Win 8中有效:在IPV6也有效的情况下需要-4。
FOR /F "tokens=5 delims==<ms" %i IN ('ping -4 www.google.com ^|find "Reply from"') DO @echo %i