OVH Cloud OVH Cloud

Paramètres passés à un fichier de commande

3 réponses
Avatar
WillBrequin
Je suis confront=E9 =E0 un l=E9ger probl=E8me en voulant passer =E0
un fichier de commande un param=E8tre incluant un point
virgule. Le point virgule est reconnu comme un s=E9parateur.=20

--- fichier test.cmd ----
@echo %1 %2
-------------------------

test.cmd EW;X 7=20

affiche EW X=20
au lieu de EW;X 7=20

Comment proc=E9der pour que le ; ne soit pas trait=E9 comme un
s=E9parateur ?

Will

3 réponses

Avatar
Jean
Bonjour,

mettre une séquence d'échappement sans doute (sous 2k/xp) :

EW^;X 7

Amicalement,

Jean - JMST
Belgium

"WillBrequin" a écrit dans le message de news: 3a1901c51f6a$1814add0$
Je suis confronté à un léger problème en voulant passer à
un fichier de commande un paramètre incluant un point
virgule. Le point virgule est reconnu comme un séparateur.

--- fichier test.cmd ----
@echo %1 %2
-------------------------

test.cmd EW;X 7

affiche EW X
au lieu de EW;X 7

Comment procéder pour que le ; ne soit pas traité comme un
séparateur ?

Will
Avatar
Jean
Bonjour,

comme vous récupérez les arguments avec %n ... je crois que ça ne fonctionera pas, c'est comme Daniel plus bas.

Amicalement,

Jean - JMST
Belgium

"Jean" <http:// a écrit dans le message de news:
Bonjour,

mettre une séquence d'échappement sans doute (sous 2k/xp) :

EW^;X 7

Amicalement,

Jean - JMST
Belgium

"WillBrequin" a écrit dans le message de news: 3a1901c51f6a$1814add0$
Je suis confronté à un léger problème en voulant passer à
un fichier de commande un paramètre incluant un point
virgule. Le point virgule est reconnu comme un séparateur.

--- fichier test.cmd ----
@echo %1 %2
-------------------------

test.cmd EW;X 7

affiche EW X
au lieu de EW;X 7

Comment procéder pour que le ; ne soit pas traité comme un
séparateur ?

Will





Avatar
Jean
Bonjour,

ça fonctionne déjà mieux si test.cmd contient :

@echo %~1

et que vous passez l'argument ente guillemets :

test.cmd "EW;X7"

Peut être d'autres solutions sont elles envisageables, je me suis basé sur la doc ici :
http://www.microsoft.com/windowsxp/home/using/productdoc/en/percent.asp

Amicalement,

Jean - JMST
Belgium

"WillBrequin" a écrit dans le message de news: 3a1901c51f6a$1814add0$
Je suis confronté à un léger problème en voulant passer à
un fichier de commande un paramètre incluant un point
virgule. Le point virgule est reconnu comme un séparateur.

--- fichier test.cmd ----
@echo %1 %2
-------------------------

test.cmd EW;X 7

affiche EW X
au lieu de EW;X 7

Comment procéder pour que le ; ne soit pas traité comme un
séparateur ?

Will