永发信息网

Bat 判断是否ping通的问题

答案:2  悬赏:10  手机版
解决时间 2021-03-16 15:24
  • 提问者网友:我没有何以琛的痴心不悔
  • 2021-03-16 05:36
当没有ping通但是我本机ip(192.168.1.100)回复无法访问目标主机
正在 Ping 172.18.0.32 具有 32 字节的数据:
来自 192.168.1.100 的回复: 无法访问目标主机。

172.18.0.32 的 Ping 统计信息:
数据包: 已发送 = 1,已接收 = 1,丢失 = 0 (0% 丢失),

我用这个命令判断的
ping 172.18.0.32 /n 1 && 测试结果:成功 || echo 测试结果:失败

实际没有通,但提示的是成功,因为我本机回复了。
但有的时候不回复。意思就是不准确
最佳答案
  • 五星知识达人网友:神鬼未生
  • 2021-03-16 07:08
没明白
全部回答
  • 1楼网友:舍身薄凉客
  • 2021-03-16 08:01
你的代码中,if语句%errorlevel%的值是执行for语句之前的errorlevel,所以一直是0 一般有以下两种解决方法, 用 if errorlevel 语句: for /f %%i in (ip.txt) do ping %%i -n 1 & if errorlevel 1 (echo %%i fail >>ok.txt) else (echo %%i pass >>ok.txt)或者,启用延迟变量扩展: setlocal enabledelayedexpansion for /f %%i in (ip.txt) do ping %%i -n 1 & if !errorlevel! equ 1 (echo %%i fail >>ok.txt) else (echo %%i pass >>ok.txt)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯