标题: [文本处理] [已解决]for循环获取到了需要的文本内容,do后面不会写了,求助 [打印本页]
作者: zds612 时间: 2017-11-16 16:51 标题: [已解决]for循环获取到了需要的文本内容,do后面不会写了,求助
本帖最后由 zds612 于 2017-11-17 13:53 编辑
我需要写一个批处理用于每日检查较多的服务器及网络设备状态,
检查方法就是ping每个IP,如果不通再详细跟进处理
我的思路是在ip.txt里预录入了相关的IP和设备名称,如:- 132.147.180.2 内部网服务器
- 132.147.180.9 电邮服务器
- 132.147.180.123 打印服务器
复制代码
然后通过for循环将所需的ip和名称获取到,
接着执行ping命令,然后进行检测(ERRORLEVEL),并提示成功或失败
显示的效果是- 正在检查ip为132.147.180.2 的内部网服务器 的网络状态...
- 检查结果:网络正常。
- 正在检测ip为132.147.180.9 电邮服务器 的网络状态...
- 检查结果:网络正常。
- 正在检测ip为132.147.180.123 打印服务器 的网络状态..
- .检查结果:网络正常。
复制代码
看了网上关于for的知识,写出这个代码,后面的不会写了。。- @echo off
- for /f "tokens=1,2 delims= " %%i in (ip.txt) do echo 正在ping%%j... && ping -n 2 %%i>nul
- pause
复制代码
求帮助,谢谢!
作者: Blitz 时间: 2017-11-16 21:31
本帖最后由 Blitz 于 2017-11-16 21:53 编辑
- @echo off&setlocal enabledelayedexpansion
- for /f "tokens=1,2 delims= " %%i in (ip.txt) do (
- echo 正在检查ip为 %%i 的 %%j 的网络状态...
- ping -n 2 %%i|find "TTL" >nul
- if !errorlevel! == 0 (echo 检查结果:网络正常) else echo 检查结果:网络错误---
- echo.
- )
- pause
复制代码
作者: zds612 时间: 2017-11-17 09:29
回复 2# Blitz
非常感谢!!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |