查看文章 |
利用批处理ping主机,检测多台主机是否可连
2008-05-16 17:48
实验室有多台unix主机,有时为了给国家省电,经常会关掉一些主机,然后就忘了上电了,所以写了一个批处理程序,批量检测这些主机是否可连。 每行一个ip列在文本pingip.txt里: 172.19.111.33 172.19.111.34 172.19.111.35 172.19.111.36 172.19.111.37 172.19.111.38 172.19.111.39 172.19.111.40 172.19.111.41 172.19.111.42 172.19.111.43 172.19.111.44 172.19.111.45 172.19.111.46 172.19.111.47 172.19.111.48 172.19.111.49 批处理程序pinghost.bat会逐行读取这个文件,并且发出ping命令,成功即显示ok,失败显示failed,并生成一个详细结果文件,可用记事本打开查询ping的详细信息。 ==================================================================== :: 检测各主机信息,最后生成结果文件checkhost.txt @mode con cols=80 lines=25 @echo off title 检测主机连接信息 By: Encle setlocal EnableDelayedExpansion set separator=-------------------------------------------------------------- set result=checkhost.txt date /T > %result% echo %time% >> %result% :: 查看本机网络连接信息 echo. >> %result% echo 本机网络连接信息: >> %result% ipconfig | find ":" >> %result% echo.%separator% >> %result% :: 检测各主机 for /f %%a in (pingip.txt) do ( call :pinghost %%a ) echo. >> %result% date /T >> %result% echo %time% >> %result% echo 检测完毕,按任意键将打开详细结果文件... pause > nul notepad %result% exit :: pinghost子程序 :pinghost ping -n 1 -w 200 %1 >> %result% if %errorlevel%==0 (echo ping %1 ok) else (echo ping %1 failed) echo.%separator% >> %result% ==================================================================== 把这两个文件放于同一目录下,点击批处理程序pinghost.bat即可,执行结果如下: ![]() 另外由于主机是多个人在使用,有人会把root密码修改,下一步完善一下该脚本,每台主机都用默认密码telnet一下看是否成功,然后提示友好信息,呵呵。。。 --End-- |
最近读者:
