使用批处理ping ip段内主机

live.bat
@echo off
@for /l %%a in (1,1,254) do (ping -n 6 ip |find "Reply from" >> live.txt)
echo done
pause >nul


ip 可以自己设定,比如168.9.9.%%a  或者 168.6.%%a.9 , 但是一定有一个选项是%%a 以便扫描。 
 

这个好玩~:)
再来一个254线程扫描的,嘿嘿~:)

(用 Start 模拟 254线程,扫描 1-254 台主机约为 20 秒)


(运行前注意: 运行后同时开启 254 个窗口 ,因为是多线程嘛~:)
(       不过没什么,哈哈……请做好心理准备~:D 
(       但是,一个窗口不到1秒钟就闪完了,所以屏幕上视觉上也就8个窗口左右)


(下面代码当都扫描完成以后,会在当前目前生成一个名为 IP.TXT 的扫描日志,打开看就行了)

CODE:   [Copy to clipboard]
@echo off

if [%1]==[] (Goto :Start) else (Goto : Ping)

:Start
        echo.ScanTime:%time%>ip.txt&&set "ip=61.149.20"
        for /L %%i in (1,1,254) do Start %~s0 %ip%.%%i        
        Goto :eof

: Ping
        ping %1 -n 1 -w 1 >nul&&echo %1 - OK!>>ip.txt
        exit

(注:上面批处理的文件名不能含有空格)

 

我也写了一个完整点的 评论一下

@echo off
echo                         -----------------------------
echo                              请选择你所扫描的类型
echo                         -----------------------------
echo .
echo                  [A] :IP段扫描           [B] :精确IP及端口扫描
:x
set /p choice="请输入扫描类型:A or B :"
if /i %choice%==a goto ipduan else goto y
:y
if /i %choice%==b goto ip else goto x
:ipduan
echo 进入IP段扫描模式:
set /p ipa="输入扫描的ip段前三段(例如:192.168.1):"
set /p port="输入要扫描的端口:"
for /l %%i in (1,1,255) do (telnet %ipa%.%%i %port%)

:ip
echo 进入精确扫描模式:
set /p ipa="输入扫描的ip:(例如:192.168.0.1)"
set /p port1="输入要扫描的开始端口:"
set /p port2="输入要扫描的结束端口:"
for /l %%i in (%port1%,1,%port2%) do (telnet %ipa% %%i)
pause>nul

你可能感兴趣的:(Other,多线程)