运用批处理命令实现对IP.TXT文件的ip地址进行ping操作,并按照固定格式输出到指定txt文档中

各位大神:
(1)我有一个“IP.txt”的文件,里面全是主机名和ip地址,具体的数量是可变的,
在家 127.0.0.1
哈哈 192.168.1.11
哈哈 192.168.1.116
........
(2)我想编写一个批处理程序,对这个ip.txt里面的所有地址进行ping操作,然后将ping的结果输出到另外的一个“结果.txt”文档中,具体格式如下:

开始ping 在家
正在 Ping 127.0.0.1 具有 32 字节的数据:
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=64
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=64
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=64
来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=64

127.0.0.1 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 0ms,最长 = 0ms,平均 = 0ms
————————————————————————————
开始ping 哈哈
正在 Ping 192.168.1.11 具有 32 字节的数据:
来自 192.168.1.11 的回复: 字节=32 时间=8ms TTL=58
来自 192.168.1.11 的回复: 字节=32 时间=3ms TTL=58
来自 192.168.1.11 的回复: 字节=32 时间=2ms TTL=58
来自 192.168.1.11 的回复: 字节=32 时间=13ms TTL=58
192.168.1.11 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 2ms,最长 = 13ms,平均 = 6ms
———————————————————————————————

@echo off
cd /d "%~dp0"
for /f "tokens=1,2" %%a in ('type "IP.txt"') do (
echo;开始ping%%a,稍后……
ping %%b >>"结果.txt" 2>&1
echo;————————————————————————————>>"结果.txt"
)
pause

互助互利,及时采纳回答

追问

谢谢老师的回答,但是我还有一个疑问请老师解答,谢谢。
(1)在程序运行的时候,可不可以不显示cmd命令的这个黑色的框和“开始ping%%a,稍后…”
(2)运行后的结果里面没有“开始ping 哈哈”等的提示
(3) 2>&1这个表达式是什么意思啊?

追答@echo off
if "%1"=="h" goto loop
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:loop
cd /d "%~dp0"
(for /f "tokens=1,2" %%a in ('type "IP.txt"') do (
echo;开始ping%%a
ping %%b
echo;————————————————————————————
))>"结果.txt" 2>&1

温馨提示:答案为网友推荐,仅供参考
相似回答