PROJET AUTOBLOG


Shaarli - Les discussions de Shaarli

Archivé

Site original : Shaarli - Les discussions de Shaarli

⇐ retour index

[Résolu] [Batch] Pourquoi ma variable ne s'affiche pas

jeudi 19 mars 2015 à 16:11
Shaarli | Orangina Rouge 19/03/2015
Et oui, le fameux problème de "L'expansion retardée de variables d'environnement"
Au lieu de ça :
----------------------------------------
dir /B /S %RepToRead% > %FileName%
for /f "tokens=*" %%a in ('type %FileName%') do (
   set c=%%a
   echo %c%
   echo %%a
)
----------------------------------------
On doit plutôt mettre ça :
----------------------------------------
@echo off
setlocal enableDelayedExpansion
dir /B /S %RepToRead% > %FileName%
for /f "tokens=*" %%a in ('type %FileName%') do (
   set c=%%a
   echo !c!
   echo %%a
)
----------------------------------------
Et ça marche très bien.
(Permalink)

Links Lounge 20/03/2015
Ah oui. MS-DOS.
Quand j'ai découvert "L'expansion retardée de variables d'environnement" (que c'est bien dit ;-D), c'est l'une des rares fois où j'ai douté de ma compréhension. C'est un peu foufou cette histoire.
(Permalink)