我需要检查服务器是否启动? 如果失败,我需要发送电子邮件 这个任务应该每隔30分钟重复一次。
我必须使用批处理文件来执行此操作。
答案 0 :(得分:7)
这个批处理文件可以帮助你完成大部分工作。您将不得不使用blat或类似的东西或Windows脚本来发送电子邮件。使用任务计划程序每30分钟调用一次批处理文件。
checkserver.bat:
@echo off
ping -n 1 %1 > NUL
IF ERRORLEVEL 0 (echo "Up -- Don't send email.") ELSE echo "Down -- Send email."
这样称呼:
C:\>checkserver 127.0.0.1
"Up -- Don't send email."
C:\>checkserver 128.0.0.1
"Down -- Send email."
答案 1 :(得分:0)
如果您知道其IP地址,可以尝试访问其中一个文件系统共享或ping它。这将是最简单的方法,它们都可以从CMD中完成。
答案 2 :(得分:0)
要检查服务器是否已启动,您可以使用ping
命令。要发送电子邮件,您可以下载blat
等电子邮件工具。要每30分钟重复一次,请使用任务计划程序进行设置。
答案 3 :(得分:-1)
您可以检查机器是否回复ping
。但是,由于Windows上的ping不会返回有用的%errorlevel%
,因此您需要通过find
通过管道传递其输出。
示例:
ping -4 -n 2 YourIPorHostname | find "TTL=" >NUL && echo OK
或
ping -4 -n 2 YourIPorHostname | find "TTL=" >NUL || echo No reply
要发送电子邮件,您需要一些其他程序。
(如果您的网络上也有一台Unix计算机,那么从那里开始,整个事情会容易得多,因为“ crontab”调度程序会自动发送电子邮件)