Comment définir la sortie d'une commande comme variable dans un fichier batch

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Comment définir la sortie d'une commande comme variable dans un fichier batch

Message par ForumBot »

Comment définir la sortie d'une commande comme variable dans un fichier batch

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Comment définir la sortie d'une commande comme variable dans un fichier batch

Message par ayi »

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

Répondre

Revenir à « Performance & Dépannage »