一个批量ping ip段的批处理
@echo offtitle Ping IP网段批处理(C)Smite Chow
:start
cls
echo ===============================
echo S.查看本机hosts
echo P.Ping IP段
echo A.关于...
echo Q.退出...
echo ===============================
set /P temp=请选择:
if /I "%temp%"=="S" goto :show
if /I "%temp%"=="P" goto :ping
if /I "%temp%"=="A" goto :about
if /I "%temp%"=="Q" goto :quit
goto :start
:show
cls
start notepad %Systemroot%/system32/drivers/etc/hosts
goto :start
:ping
cls
echo ============================
echo 请输入一个ip地址像这样:103.208.45.x
echo x代表你要查询的ip段
echo ============================
set /P tempip=:
echo ============================
echo 请输入ip段的开始值,注意范围是0-255
echo ============================
set /P tempgs=:
echo ============================
echo 请输入ip段的结束值,注意范围是0-255
echo ============================
set /P tempge=:
goto getargc
:showpinghelp
ping /?
:getargc
echo ============================
echo 对于每个ip你希望应用的ping参数是?
echo 例如:-n 3 -w 100
echo ============================
echo 查看ping参数请输入S或者直接输入参数
set /p argc=:
if /I "%argc%"=="s" goto showpinghelp
echo ============================
echo 请选择输出模式:
echo Full为全文输出
echo Great为只输出0%%丢失的ip
echo Less为输出小于100%%丢失的ip
echo ============================
set /p outmodel=:
echo ============================
echo 你要ping的ip是:%tempip%
echo 此ip段开始值为:%tempgs%
echo 此ip段结束值为:%tempge%
echo ping参数是:%argc%
echo 输出模式为:%outmodel%
echo ============================
echo 确认开始请输入:y 返回重新输入参数请输入:n
set /p ok=:
if /I "%ok%"=="y" goto continu
if /I "%ok%"=="n" goto ping
:continu
cls
if exist results.txt del results.txt
echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
echo ++感谢使用Smite Chow 出品批量ping批处理,更多信息访问:www.smitechow.com++
echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++>>results.txt
echo ++感谢使用Smite Chow 出品批量ping批处理,更多信息访问:www.smitechow.com++>>results.txt
echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++>>results.txt
echo %date% %time%>>results.txt
echo ping %argc% %tempip% 从%tempgs%到%tempge% 输出模式为:%outmodel%>>results.txt
echo ---------------------------------------------------------->>results.txt
setlocal enabledelayedexpansion
echo 正在ping。。。
for /l %%i in (!tempgs!,1,!tempge!) do (
set temp=!tempip:x=%%i!
set /a number=!tempge!-%%i
echo !temp! 还有!number!个ip地址在队列中。。。
if /I "!outmodel!"=="full" (
ping !argc! !temp!>>results.txt
echo ---------------------------------------------------------->>results.txt
)
if /I "!outmodel!"=="great" (
ping !argc! !temp! | find "(0%% loss)" >nul
if !errorlevel!==0 echo !temp!>>results.txt
)
if /I "!outmodel!"=="less" (
ping !argc! !temp! | find "(100%% loss)" >nul
if !errorlevel!==1 echo !temp!>>results.txt
)
)
echo ---------------------------------------------------------->>results.txt
setlocal disabledelayedexpansion
start notepad results.txt
echo 完成,任意键返回主菜单...
pause >nul
del results.txt
goto :start
:about
cls
echo =================================================================
echo 此工具主要用来翻墙,由于hosts中ip经常被墙,所以需要时常更换,囧。。。
echo 默认ping的结果弹出查看窗口后会删除,如果你想保存信息,请手动保存弹出的文本。
echo (C)2012 Smite Chow Made In Beijing 2012年1月20日1:33:40
echo =================================================================
echo 任意键返回主菜单...
pause >nul
goto :start
:end 好东西好好学习下
页:
[1]