2016-07-28 2 views
0

私はこれでかなり新しいので、私と一緒にご負担ください。あなたの助けを前にありがとう。複数のPCにpingを実行してテキストを追加する

このコードでは、異なるPCにpingを実行して、オンライン/オフラインの場合に戻ることができます。私は、バットファイルがpingテストを実行した後で別の列を追加できるかどうかを知りたかったので、その横にコンピュータ名があります。

@echo off 
if exist C:\tools\computers.txt goto Label1 
echo. 
echo Cannot find C:\tools\computers.txt 
echo. 
Pause 
goto :eof 

:Label1 
echo PingTest executed on %date% at %time% > C:\tools\z.txt 
echo ================================================= >> C:\tools\z.txt 
for /f %%i in (C:\tools\computers.txt) do call :Sub %%i notepad C:\tools\z.txt 
goto :eof 

:Sub 
echo Testing %1 set state=alive ping -n 1 %1 | find /i "bytes=" || set state=dead echo %1 is %state% >> C:\tools\z.txt 

batファイルは、次の内容を示すドキュメントを作成します。

ます。Pingtestは午前13時10分28秒

99.1.82.28で28/07/2016で実行

99.1.82.100は、電気ショック療法

生きている生きています。


可能であれば、これを表示するようにbatファイルを実行したいと思います。

batファイルは、以下を示すドキュメントを作成します。

ます。Pingtestは午前13時10分28秒

コンピュータ1で28/07/2016で実行:99.1.82.100電気ショック療法生き

です:99.1.82.28は

コンピュータ2が生きています。

-

は、この上の任意のヘルプ&指導をお願い申し上げます。

ありがとうございました。

@echo off 
Title Ping Test 
set "URLS=URLS.txt" 
set "LogFile=PingResults.txt" 
If exist %LogFile% Del %LogFile% 
(
    echo ****************************************************** 
    echo PingTest executed on %Date% @ Time %Time% 
    echo ****************************************************** 
    echo(
) > %LogFile% 

Setlocal EnableDelayedExpansion 
for /f "usebackq delims=" %%a in ("%URLS%") do (
    for /f "tokens=2 delims=[]" %%b in ('ping -n 1 %%a') do set "ip=%%b" 
     ping -n 1 %%a>nul && set "msg=%%a : !ip! ALive ok" || set "msg=%%a : !ip! Dead failed to respond" 
     echo !msg! 
     echo !msg! >> %LogFile% 
    ) 
) 
EndLocal 
Start "" %LogFile% 
pause>nul & exit 

EDIT:29/07/2016に12:48

マルチカラーの別のバージョン@:

+0

このコードを見てみましょう==> http://stackoverflow.com/questions/で更新12408673/how-to-ping-multiple-servers-and-return-ip-address-and-hostnames-using-batch-scr?answertab = active#tab-top – Hackoo

答えて

0

あなたはこのソリューションを試すことができ感謝をに行きますICARUS色彩機能(-_°)

enter image description here

@echo off 
Rem Special thanks goes to Iracus for the color function (-_°) 
mode con cols=60 lines=20 
Title Multi-Ping hosts Tester with Multi-colors by Hackoo 
set "URLS=URLS.txt" 
set "LogFile=PingResults.txt" 
If exist %LogFile% Del %LogFile% 
call :init 
echo(
call :color 0E "------- Ping Status of Computers hosts -------" 1 
echo(
(
    echo ****************************************************** 
    echo PingTest executed on %Date% @ Time %Time% 
    echo ****************************************************** 
    echo(
) > %LogFile% 
Setlocal EnableDelayedExpansion 
for /f "usebackq delims=" %%a in ("%URLS%") do (
    for /f "tokens=2 delims=[]" %%b in ('ping -n 1 %%a') do set "ip=%%b" 
     ping -n 1 %%a>nul && set "msg=%%a - !ip! ALive ok" && Call :Color 0A "!msg!" 1 || set "msg=%%a - !ip! Dead failed to respond" && Call :Color 0C "!msg!" 1 
     echo !msg! >> %LogFile% 
    ) 
) 
EndLocal 
Start "" %LogFile% 
pause>nul & exit 

:init 
prompt $g 
for /F "delims=." %%a in ('"prompt $H. & for %%b in (1) do rem"') do set "BS=%%a" 
exit /b 

:color 
set nL=%3 
if not defined nL echo requires third argument & pause > nul & goto :eof 
if %3 == 0 (
    <nul set /p ".=%bs%">%2 & findstr /v /a:%1 /r "^$" %2 nul & del %2 2>&1 & goto :eof 
) else if %3 == 1 (
    echo %bs%>%2 & findstr /v /a:%1 /r "^$" %2 nul & del %2 2>&1 & goto :eof 
) 
exit /b 

EDIT:23/08/2016

http://pastebin.com/zjYwSqUM

関連する問題