ping先が増えると、記述を増加させないといけないのが大変です。
じゃ、IPとコメントをリスト化すれば本体を修正する手間が減る!
ってことでリストから読み込みます。
---------bat本体---------
@echo off
%~d0
cd %~dp0
VER | find "Version 6.0.6002" > nul
IF not errorlevel 1 GOTO 6x
VER | find "Version 5.1.2600" > nul
IF not errorlevel 1 GOTO 5x
VER | find "Version 6.1.7600" > nul
IF not errorlevel 1 GOTO 6x
VER | find "Vwesion 6.0.6000" > NUL
if not errorlevel 1 goto 6x
VER | find "Version 5.2.3790" > nul
IF not errorlevel 1 GOTO 5x
GOTO unknown_os
:5x
for /f "tokens=1-2" %%a in (list.txt) do call :5x_ping %%a %%b
:5x_ping
set i=%1
if "%1" == "" goto last
set t=%2
ping %i% -n 1 | find "bytes=" > nul
if not errorlevel 1 goto 5x_good
goto 5x_bad
:5x_good
@echo %t%との通信成功
goto end
:5x_bad
@echo %t%との通信が出来ませんでした。
goto end
:6x
for /f "tokens=1-2" %%a in (list.txt) do call :6x_ping %%a %%b
:6x_ping
set i=%1
if "%1" == "" goto last
set t=%2
ping %i% -n 1 | find "バイト数" > nul
if not errorlevel 1 goto 6x_good
goto 6x_bad
:6x_good
@echo %t%との通信成功
goto end
:6x_bad
@echo %t%との通信が出来ませんでした。
goto end
:unknown_os
@echo 不明なOSです。
:end
goto :EOF
:last
pause
-----以上----------
リストは、バッチと同じフォルダにlist.txtで作成しスペース区切りで作成
-----内容-------
192.168.1.1 ルータ
192.168.1.254 サーバ
192.168.1.201 プリンタ
-----以上-------
じゃ、IPとコメントをリスト化すれば本体を修正する手間が減る!
ってことでリストから読み込みます。
---------bat本体---------
@echo off
%~d0
cd %~dp0
VER | find "Version 6.0.6002" > nul
IF not errorlevel 1 GOTO 6x
VER | find "Version 5.1.2600" > nul
IF not errorlevel 1 GOTO 5x
VER | find "Version 6.1.7600" > nul
IF not errorlevel 1 GOTO 6x
VER | find "Vwesion 6.0.6000" > NUL
if not errorlevel 1 goto 6x
VER | find "Version 5.2.3790" > nul
IF not errorlevel 1 GOTO 5x
GOTO unknown_os
:5x
for /f "tokens=1-2" %%a in (list.txt) do call :5x_ping %%a %%b
:5x_ping
set i=%1
if "%1" == "" goto last
set t=%2
ping %i% -n 1 | find "bytes=" > nul
if not errorlevel 1 goto 5x_good
goto 5x_bad
:5x_good
@echo %t%との通信成功
goto end
:5x_bad
@echo %t%との通信が出来ませんでした。
goto end
:6x
for /f "tokens=1-2" %%a in (list.txt) do call :6x_ping %%a %%b
:6x_ping
set i=%1
if "%1" == "" goto last
set t=%2
ping %i% -n 1 | find "バイト数" > nul
if not errorlevel 1 goto 6x_good
goto 6x_bad
:6x_good
@echo %t%との通信成功
goto end
:6x_bad
@echo %t%との通信が出来ませんでした。
goto end
:unknown_os
@echo 不明なOSです。
:end
goto :EOF
:last
pause
-----以上----------
リストは、バッチと同じフォルダにlist.txtで作成しスペース区切りで作成
-----内容-------
192.168.1.1 ルータ
192.168.1.254 サーバ
192.168.1.201 プリンタ
-----以上-------