永发信息网

bat问题,errorlevel为什么总是 0?

答案:3  悬赏:40  手机版
解决时间 2021-01-29 15:52
  • 提问者网友:箛茗
  • 2021-01-29 08:25
bat问题,errorlevel为什么总是 0?
最佳答案
  • 五星知识达人网友:英雄的欲望
  • 2021-01-29 09:29
有以下两种解决方法:
1、用 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)2、启用延迟变量扩展:
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)
全部回答
  • 1楼网友:大漠
  • 2021-01-29 11:45
求同!!!
  • 2楼网友:你可爱的野爹
  • 2021-01-29 10:19
%errorlevel% 表示 for 语句执行前的 errorlevel 的值。
%errorlevel% 改为 !errorlevel!
或者 if 语句改为
if errorlevel 1 (echo %%i dead>>log.txt) else (echo %%i alive>>log.txt)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯