多次 ping 尝试后批处理崩溃
Batch just crashes after too many ping attempts
如果我能 ping 通其中一些地址,我会尝试找出类似地址的列表。
但是在大约 304 ping attemps/fails 之后,脚本就崩溃了。
@echo off
echo Start
set /A PORT=0
call:start
echo Finished
pause
:start
set /A PORT=%PORT%+1
set ADRESS=http://Adress.servehttp.com:%PORT%
ping /n 1 %ADRESS%
if %ERRORLEVEL% EQU 0 (echo %ADRESS% >> results.log)
if %PORT% LEQ 65535 (call:start) ELSE pause
您的 start
函数是递归的,并且您已达到批处理脚本允许的堆栈限制,该限制通常非常低。
您可以使用循环来解决这个问题。
如果我能 ping 通其中一些地址,我会尝试找出类似地址的列表。 但是在大约 304 ping attemps/fails 之后,脚本就崩溃了。
@echo off
echo Start
set /A PORT=0
call:start
echo Finished
pause
:start
set /A PORT=%PORT%+1
set ADRESS=http://Adress.servehttp.com:%PORT%
ping /n 1 %ADRESS%
if %ERRORLEVEL% EQU 0 (echo %ADRESS% >> results.log)
if %PORT% LEQ 65535 (call:start) ELSE pause
您的 start
函数是递归的,并且您已达到批处理脚本允许的堆栈限制,该限制通常非常低。
您可以使用循环来解决这个问题。