バッチ スクリプトの初心者。ディレクトリをポーリングして LEND で始まるファイル名を持つファイルをチェックするスクリプトを作成しようとしています。ファイルが 17:30 までに受信されない場合は、ログ ファイルにログ メッセージを書き込みます。以下のバッチスクリプトを作成しました。ディレクトリにファイルがない限り、スクリプトは正常に実行されます。そこにファイルを入れるとすぐに、実行が停止します。そのディレクトリからファイルを削除すると、再起動します。どこが間違っているのか教えてください。ありがとう
@echo off
set I=0
set log=C:\logs\alerting.log
:recurse
for /f %%P in ('dir /b "C:\incoming\LEND*"') do (call :countfiles)
set Time=%time:~0,5%
echo Filecount: %I% at Time: %Time% >> %log%
if %Time%==17:30 goto OUT
pause 60
goto :recurse
:countfiles
set /a I+=1
:OUT
if %I%==0 echo LEND Files not received >> %log%
EXIT