1
下面的腳本工作,但它會減慢很多當擊中離線主機。試圖通過使用ping來加快我的批處理文件處理速度。現在跳出循環
@echo off
rem Setup the output file. This just wipes the pre-existing file from last set of data mining
for /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set mydate=%%c-%%a-%%b)
for /f "tokens=1-2 delims=/:" %%a in ('time /t') do (set mytime=%%a%%b)
echo %mydate%_%mytime% > output\datamine.txt
**setlocal enabledelayedexpansion
for /f %%a in (hosts.txt) do (
psexec \\\%%a findstr /I ":" "C:\ProgramData\Firewall\event.log" >> output\datamine.txt)
endlocal**
我改寫了平聲明,打算跳過不回答主機。下面是它的肉:
for /f %%a in (hosts.txt) do (<br>
ping -n 1 -w 100 %%a | for /f "skip=1 tokens=3 delims= " %%b in ('findstr bytes') do (set COMPNAME=%%b)
if errorlevel 1 goto FAIL
psexec \\%%a findstr /I ":" "C:\ProgramData\Firewall\event.log" >> output\datamine.txt)
goto END
:FAIL
echo host not answering
:END
endlocal
的問題是那麼明顯,我退出時主機不迴應ping do循環。我需要腳本來查看錯誤級別1,然後跳到下一個主機。不知道我應該在哪裏結束循環。另外,我對「goto」的選擇不太確定。 有什麼建議嗎?
就是這樣。好多了。我不確定爲什麼我沒有想到這個電話。謝謝! – AndyG