批處理監測設備(網站)狀態

 

        因爲要解決一個內外網共用的問題,需要用到到指定網站連通性的測試,這個對一般專業IT從業人員來說也就是一個ping命令的事,但要讓普通用戶能直觀獲得反饋,就得寫個小程序給他們,我考慮到便捷性與知識的熟悉性,決定用批處理,然後在網上就找到下面這個程序:

@echo off
ping 192.168.1.1&& goto :1 || goto :2
exit
:1
echo ******金安參保系統網連接成功,請打開參保系統。
pause
exit
:2
echo *****金安參保系統網連接失敗,請檢查外網或移動客戶端是否正常開啓。
pause 

       這段代碼呢,看起來是沒問題的,你要是在Windows XP下跑呢,他也能完成功能,但是,你要是在Windows 7平臺上跑就會出問題,比如在我家的內網測試時,分別將指定地址指向我家的路由(192.168.1.1)和一個不存在的IP地址(192.168.1.11),他的反饋是下面這樣的:

 

        造成這個局面的原因是,XP如果檢測不到對方在線,直接反饋的是Bad Request,而在Windows 7下面,無論對方在不在線,他都給你回覆,只是回覆內容不同而已,所以,這個批處理就抓瞎了,誤報了。

        然後,我又參考另一個網友的代碼,自己寫了一個:


::一個用來測試指定網址或IP是否通暢的小工具,不通則循環測試。
::Write By 上博科技 QQ20031722 
::www.bitpacket.cn   blog.csdn.net/laguoqing
::2019-03-14

::測試連通性
:start
@mode con cols=60 lines=15
@echo off
ping -n 2 192.168.1.1|findstr "TTL="&&goto reach||goto unreach
:reach
color 0a
echo.
echo.
@echo.**********************************************************
@echo.*                                                        *
@echo.*                                                        *
@echo.*   經測試,專網通暢,祝您工作順利!                         *
@echo.*                                                        *
@echo *         上博科技承製集成!QQ:20031722                    *
@echo.*                                                        *
@echo.**********************************************************
mshta vbscript:createobject("sapi.spvoice").speak("經測試,專網通暢,祝您工作順利!")(window.close)
@ping -n 10 127.0.0.1>nul
goto exit    

:unreach
color 0F
echo.
echo.
@echo.**********************************************************
@echo.*                                                        *
@echo.*                                                         *
@echo.*   經測試,專網目前尚不聯通,請檢查硬件與配置!               *
@echo.*                                                        *
@echo *         上博科技承製集成!QQ:20031722                    *
@echo.*                                                        *
@echo.**********************************************************
mshta vbscript:createobject("sapi.spvoice").speak("經測試,專網目前尚不聯通,請檢查硬件與配置")(window.close)
@ping -n 10 127.0.0.1>nul
goto start
::goto exit    

:exit
exit
       

       分別在Windows XP和Windows 7試跑,他都準確無誤的獲得了正確的結果,兼容性是剛剛的,上個圖:

        最奇妙的是,他還能通過音箱發聲,寫這麼多年批處理,才發現還能這麼幹,學無止境呀!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章