dos windows linux 下用脚本/批处理ping一个网段内的所有机器
2014-04-27 13:16
1086 查看
dos windows linux 下用脚本/批处理ping一个网段内的所有机器
dos/windows的命令行/批处理for /l %p in (1,1,254) do @ping 192.168.1.%p -n 1 |find "reply from" /i
在dos窗口执行上面的批命令,就会显示出所有开机的ping结果.
如果显示ping不通的所有结果,则命令为:
for /l %p in (1,1,254) do @ping 192.168.1.%p -n 1 |find "request timed out" /i
如果要ping IP地址范围为(192.168.1.30~192.168.1.60),则命令改为.
for /l %p in (30,1,60) do @ping 192.168.1.%p -n 1 |find "reply from" /i
如果把上面的命令写入批处理文件(.bat,.cmd)中,要在%前再加一个%,如下:
rem myping.bat
for /l %%p in (1,1,254) do @ping 192.168.1.%%p -n 1 |find "reply from" /i
linux下的命令/脚本:
1,可以用ping -b 广播地址;
2,用脚本实现:
#!/bin/sh
ip=1 #通过修改初值及下面的判断条件实现ping任一段的ip
while [ $ip != "254" ]; do
ping 192.168.1.$ip -c 1 |grep "bytes from 192.168.1.$ip"
ip=`expr "$ip" "+" "1"`
done
高级一点的如下:
for /l %i in (1,1,255) do @ping -n 1 -w 40 192.168.1.%i & if errorlevel 1 (echo 192.168.1.%i>>na.txt) else (echo 192.168.1.%i>>act.txt)
回车,将自动探测192.168.1.X网段的ip响应情况. 现在是假设你的电脑属于192.168.1.X网段某一部.
存活的保存在 act.txt,不通的在 na.txt;
根据实际改改 -n 1 -w 40 的参数,以达到精准。
还有个高级应用:
@for /l %i in (1,1,65535) do @ping -n 1 -w 40 192.168.%i & if errorlevel 1 (echo 192.168.%i>>na.txt) else (echo 192.168.%i>>act.txt)
原文:PING一个网段内的所有机器
相关文章推荐
- Linux下shell脚本中信号捕获和函数练习脚本之ping一个网段
- shell 脚本:ping一个网段的所有ip 和 隔一秒显示当前的时间
- DOS的FIND及ping一个网段内的机器
- 一个shell脚本实现linux集群所有机器免密钥登录
- Windows,查看同网段所有能Ping通的IP地址
- 自动检测局域网全部计算机ping情况脚本(windows,mac,linux)
- 获取同一网段下所有机器MAC地址的shell脚本
- 一条批处理语句ping局域网内的所有机器
- 如何ping同一个网段内的所有在用IP
- SecureCRT 连接 同一个网段里有一台机器 linux sshd seesion自动关闭
- ping 一个网段主机的shell脚本
- 在Windows下写了一个shell脚本,上传到Linux下执行时报错
- shell脚本兼容linux/unix与windows/cygwin的基础(注意处理好CR, LF, CR/LF 回车 换行的问题)
- 在Windows下写了一个shell脚本,上传到Linux下执行时报错:
- Dos命令--ping不通某机器则执行脚本
- shell脚本ping网段所有IP
- 利用putty在windows上通过脚本在远程Linux机器执行指令
- 一个JSON字符串和文件处理的命令行神器jq,windows和linux都可用
- 写一个脚本,ping本网段,把能通的IP和不通IP各输出一个文本
- 小白写的一个linuxcast播客所有视频地址脚本