Вот пример сценария, который будет считать строки в выводе команды dir
.
@echo off
setlocal enabledelayedexpansion
set lc=0
for /f "usebackq delims=_" %%i in (`dir`) do (
echo %%i
set /a lc=!lc! + 1
)
echo %lc%
endlocal
Вы можете заменить dir
своей командой, а также использовать кавычки и указать параметры. Вам придется экранировать некоторые другие символы - ^
, |
<
>
и &
.
Если вам нужно не только считать строки, но и анализировать каждую строку, вам, возможно, придется изменить разделитель токена с _
(как я использовал в примере) на что-то другое, что не приведет к разбиению строки в нескольких токенах.