当前位置: 首页 > 图文教程 > 脚本技术 > DOS/BAT > 计算机/网络设备状态监测脚本 批处理

DOS/BAT
批处理应用根据文件内容进行重命名操作
批处理应用 临时目录清理
批处理应用 "添加/删除程序"修复
批处理应用 OFFICE复位
计算机/网络设备状态监测脚本 批处理
使用批处理删除HOSTS中特定内容的行的代码
用批处理实现映射盘网络盘为固定盘符,请更改冲突的硬盘盘符
关于shell命令的定向输出 2>&1
批处理程序中的“多线程”处理代码
使用FTP下载目录,即FTP命令批量自动下载的bat文件
用DOS命令判断磁盘分区是否为NTFS格式
批处理的高级运用技巧
学会批处理,用心学很容易!另一不错的见解
批处理入门与提高
用DOS杀毒的一个不错的应用
Dos下终止进程的方法
批处理变量应用方法
批处理中实现替换文本内容
一个可以修复 IE浏览器的批处理文件
学习黑客必须要掌握的DOS命令全集

DOS/BAT 中的 计算机/网络设备状态监测脚本 批处理


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 177 ::
收藏到网摘: n/a

以前自己写的一个监控脚本,每隔10秒使用PING命令检查一个IP列表中的IP,如果不通,则通过messenger消息发送,并使用BEEP发出报警声。需要文件sleep.exe(可到网上下一个)、BEEP.EXE(自己用DELPHI写的,不必需,代码可去掉,也可以去网上找一个),再建立文件ip.txt,user.txt,运行脚本即可。
复制代码 代码如下:

rem main.bat
@echo off
for /F "eol=; tokens=1,2* delims==" %%i in (ip.TXT) do call :checkip %%i %%j 0
echo --------------------------------------------------------------
echo ----第一轮检查完毕,如果没有听到报警声,表示各IP都可以PING通----
echo ----如果有异常的IP,请再手动使用PING命令,以确认检查的正确性----
echo ---- 现在进行循环检查,每隔10000ms检查一个IP ----
echo --------------------------------------------------------------
:begin
for /F "eol=; tokens=1,2* delims==" %%i in (ip.TXT) do call :checkip %%i %%j 10000
goto begin
:checkip
@echo off
PING %1 -n 1 | FIND "TTL=" >NUL
IF NOT ERRORLEVEL 1 ECHO %1(%2) Status OK at %TIME%
IF NOT ERRORLEVEL 1 GOTO NEXT
PING %1 -n 1 -w 3000 | FIND "TTL=" >NUL
if %ERRORLEVEL%==1 call :send %1 %2 ELSE ECHO %1(%2) Status OK at %TIME%
:Next
sleep %3
goto end
:send
@echo off
ECHO %1(%2):::::Status ERROR at %TIME%:::::
for /F "eol=;" %%i in (user.TXT) do net send %%i "Error Pinging %1(%2)." >NUL
Beep 1500 500
Beep 500 500
Beep 1500 500
Beep 500 500
goto end
:end
;ip.txt,关键IP,一行一个IP,等号后面可输入名称
192.168.0.1=集团网关
192.168.0.123=test
;user.txt,计算机名或IP,检测到网络不通时,发送消息给文中的用户
computername