[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] [已解决]BAT如何控制ping批量运行?

本帖最后由 pZjVa0 于 2013-7-28 21:00 编辑

p.bat↓
  1. @echo off
  2. for /f %%a in (ip.txt) do start /b ping %%a
  3. pause
复制代码
ip.txt↓
  1. 192.168.1.1
  2. 192.168.1.2
  3. 192.168.1.3
  4. 192.168.1.4
  5. 192.168.1.5
  6. 192.168.1.11
  7. 192.168.1.12
  8. 192.168.1.13
  9. 192.168.1.8
  10. 192.168.1.9
  11. 192.168.1.11
  12. 192.168.1.12
复制代码
以上面为例,读取ip.txt中每行ip并用start打开进行ping。但如果要判断当读取到文本的最后一段ping时,则不使用start运行,而是直接ping 最后一行的192.168.1.12,应该如何实现?谢谢

效果示意:
  1. start ping 192.168.1.1
  2. start ping 192.168.1.2
  3. start ping 192.168.1.3
  4. start ping 192.168.1.4
  5. start ping 192.168.1.5
  6. start ping 192.168.1.11
  7. start ping 192.168.1.12
  8. start ping 192.168.1.13
  9. start ping 192.168.1.8
  10. start ping 192.168.1.9
  11. start ping 192.168.1.11
  12. ping 192.168.1.12
复制代码
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%a in (ip.txt) do (
  4.     if defined a echo,start ping !a!
  5.     set "a=%%a"
  6. )
  7. echo,ping !a!
  8. pause
复制代码
1

评分人数

TOP

返回列表