Comment définir la sortie d'une commande comme variable dans un fichier batch
Comment définir la sortie d'une commande comme variable dans un fichier batch
Re: Comment définir la sortie d'une commande comme variable dans un fichier batch
FOR /F "tokens=* USEBACKQ" %%F IN (`command`) DO (
SET var=%%F
)
ECHO %var%
J'utilise toujours USEBACKQ de sorte que si vous avez une chaîne à insérer ou un nom de fichier long, vous pouvez utiliser des guillemets doubles sans perturber la commande.
Maintenant, si votre sortie contient plusieurs lignes, vous pouvez faire ceci
SETLOCAL ENABLEDELAYEDEXPANSION
SET count=1
FOR /F "tokens=* USEBACKQ" %%F IN (`command`) DO (
SET var!count!=%%F
SET /a count=!count!+1
)
ECHO %var1%
ECHO %var2%
ECHO %var3%
ENDLOCAL