Voici un exemple de script qui comptera les lignes dans la sortie de la commande 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
Vous pouvez remplacer dir
avec votre commande et vous pouvez utiliser des guillemets et spécifier les paramètres. Vous devrez cependant échapper à d'autres caractères - ^
, |
<
>
et &
. Si vous devez non seulement compter les lignes, mais aussi analyser chaque ligne, vous devrez peut-être changer le séparateur de jetons de _
(comme je l'ai utilisé dans l'exemple) en quelque chose qui n'aboutira pas à la division de ligne plusieurs jetons.
Vous pouvez spécifier une liste de delimiter vide empêcher tokenizing avec juste 'delims =' sans rien suivant le '='. – Joey
Vous avez raison, j'ai oublié cette option. Comment mon cahier de référence de programmation Windows me manque-t-il parfois ... :-) –
Il existe un livre de référence de programmation de shell Windows? : O Donne-moi! : D ... Vous n'avez pas non plus besoin d'une expansion retardée. 'set/a lc + = 1' fera l'affaire. – Joey