2014년 2월 11일 화요일

PING 체크 배치 스크립트

ip_list.txt 안에 아이피를 넣어 놓고 스크립트를 실행하면 result.txt 파일로 결과를 생성한다.
@echo off
setlocal enabledelayedexpansion

REM http://stackoverflow.com/questions/12408673/how-to-ping-multiple-servers-and-return-ip-address-and-hostnames-using-batch-scr
REM result.txt파일은 없어도 됨.
REM ip_list.txt 파일은 있어야 됨.

set OUTPUT_FILE=result.txt
>nul copy nul %OUTPUT_FILE%
for /f %%i in (ip_list.txt) do (
    set SERVER_ADDRESS=ADDRESS N/A
    for /f "tokens=1,2,3" %%x in ('ping -n 1 %%i ^&^& echo SERVER_IS_UP') do (
    		echo %%i is checking...
        if %%x==Pinging set SERVER_ADDRESS=%%y
        if %%x==Reply set SERVER_ADDRESS=%%z
        if %%x==SERVER_IS_UP (set SERVER_STATE=UP) else (set SERVER_STATE=DOWN)
    )
    echo %%i [!SERVER_ADDRESS::=!] is !SERVER_STATE! >>%OUTPUT_FILE%
)

댓글 없음:

댓글 쓰기