各行の間に空白行があるかどうかわかりません。以下の解決策は、各行の間に空白行がないことを前提としています。言い換えれば、以下の解決策は2行に一致し、2行目は少なくとも1文字でなければなりません。
@echo off
setlocal disableDelayedExpansion
::Define LF variable containing a linefeed (0x0A)
set LF=^
::Above 2 blank lines are critical - do not remove
::Define CR variable containing a carriage return (0x0D)
for /f %%a in ('copy /Z "%~f0" nul') do set "CR=%%a"
::The above variables should be accessed using delayed expansion
setlocal enableDelayedExpansion
::regex "!CR!*!LF!" will match both Unix and Windows style End-Of-Line
findstr /rc:"!CR!*!LF!200 Type set to A!CR!*!LF!." log.txt >nul && (echo found) || echo not found
あなたが途中で空行と3行に一致するようにしようとしている場合は、最後の行は、同様に、改行を越え検索の詳細については
findstr /rc:"!CR!*!LF!200 Type set to A!CR!*!LF!!CR!*!LF!." log.txt >nul && (echo found) || echo not found
に変更する必要があります他のクールなFINDSTR機能(とバグ!)What are the undocumented features and limitations of the Windows FINDSTR command?