en batch comment faire un "set" en precisant une commande
2 réponses
truc
bonjour
Je voudrais faire un set mais en precisant une commande, genre set var=ma
commande. La variable prendra alors le resultat de la commande
la commande est un dsquery qui doit renvoyer une valeur.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gilles RONSIN
"truc" , le lun. 15 nov. 2004 13:55:05, écrivait ceci:
bonjour Salut,
Je voudrais faire un set mais en precisant une commande, genre set var=ma commande. La variable prendra alors le resultat de la commande la commande est un dsquery qui doit renvoyer une valeur.
La première idée qui me vient à l'esprit :
macommande If errorlevel 255 set var%5 .... If errorlevel 128 set var8 ... If errorlevel 1 set var
-- Embryon de site : http://gilles.ronsin.free.fr Nouvelle astuce : Script de création de raccourcis cible http://gilles.ronsin.free.fr/#targetlnk Il est impossible pour un optimiste d'être agréablement surpris.
"truc" <truc@discussions.microsoft.com>, le lun. 15 nov. 2004
13:55:05, écrivait ceci:
bonjour
Salut,
Je voudrais faire un set mais en precisant une commande, genre set
var=ma commande. La variable prendra alors le resultat de la
commande la commande est un dsquery qui doit renvoyer une valeur.
La première idée qui me vient à l'esprit :
macommande
If errorlevel 255 set var%5
....
If errorlevel 128 set var8
...
If errorlevel 1 set var
--
Embryon de site : http://gilles.ronsin.free.fr
Nouvelle astuce : Script de création de raccourcis cible
http://gilles.ronsin.free.fr/#targetlnk
Il est impossible pour un optimiste d'être agréablement surpris.
"truc" , le lun. 15 nov. 2004 13:55:05, écrivait ceci:
bonjour Salut,
Je voudrais faire un set mais en precisant une commande, genre set var=ma commande. La variable prendra alors le resultat de la commande la commande est un dsquery qui doit renvoyer une valeur.
La première idée qui me vient à l'esprit :
macommande If errorlevel 255 set var%5 .... If errorlevel 128 set var8 ... If errorlevel 1 set var
-- Embryon de site : http://gilles.ronsin.free.fr Nouvelle astuce : Script de création de raccourcis cible http://gilles.ronsin.free.fr/#targetlnk Il est impossible pour un optimiste d'être agréablement surpris.
Jean-Claude BELLAMY
Dans le message news: , truc s'est ainsi exprimé:
bonjour
Je voudrais faire un set mais en precisant une commande, genre set var=ma commande. La variable prendra alors le resultat de la commande la commande est un dsquery qui doit renvoyer une valeur.
Voici comment je pratique :
@echo off FOR /F "usebackq delims=" %%C IN (`ma commande`) do set mavariable=%%C ....
NB: les caractères encadrant la commande sont des apostrophes inversées, obtenues par la séquence ALT-GR 7
Le paramètre "usebackq" indique que le contenu de IN est une commande, et que l'utilisation éventuelle de guillemets (") pour encadrer un nom de fichier ou dossier passé en paramètres à la commande est possible :
Exemple : (fichier testset4.bat)
@echo off FOR /F "usebackq delims=" %%C IN (`dir "c:Documents and Settings"`) do set mavariable=%%C echo %mavariable%
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org http://www.bellamyjc.org *
Dans le message news:2C1D8048-A246-43E5-8349-0D4121252282@microsoft.com ,
truc <truc@discussions.microsoft.com> s'est ainsi exprimé:
bonjour
Je voudrais faire un set mais en precisant une commande, genre set
var=ma commande. La variable prendra alors le resultat de la commande
la commande est un dsquery qui doit renvoyer une valeur.
Voici comment je pratique :
@echo off
FOR /F "usebackq delims=" %%C IN (`ma commande`) do set mavariable=%%C
....
NB: les caractères encadrant la commande sont des apostrophes inversées,
obtenues par la séquence ALT-GR 7
Le paramètre "usebackq" indique que le contenu de IN est une commande, et
que l'utilisation éventuelle de guillemets (") pour encadrer un nom de
fichier ou dossier passé en paramètres à la commande est possible :
Exemple :
(fichier testset4.bat)
@echo off
FOR /F "usebackq delims=" %%C IN (`dir "c:Documents and Settings"`) do set
mavariable=%%C
echo %mavariable%
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
http://www.bellamyjc.org Jean-Claude.Bellamy@wanadoo.fr *
JC.Bellamy@free.fr
Je voudrais faire un set mais en precisant une commande, genre set var=ma commande. La variable prendra alors le resultat de la commande la commande est un dsquery qui doit renvoyer une valeur.
Voici comment je pratique :
@echo off FOR /F "usebackq delims=" %%C IN (`ma commande`) do set mavariable=%%C ....
NB: les caractères encadrant la commande sont des apostrophes inversées, obtenues par la séquence ALT-GR 7
Le paramètre "usebackq" indique que le contenu de IN est une commande, et que l'utilisation éventuelle de guillemets (") pour encadrer un nom de fichier ou dossier passé en paramètres à la commande est possible :
Exemple : (fichier testset4.bat)
@echo off FOR /F "usebackq delims=" %%C IN (`dir "c:Documents and Settings"`) do set mavariable=%%C echo %mavariable%
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org http://www.bellamyjc.org *