Espace dans les paramètres sous Windows

Bonjour,

Je créé un job sur une machine windows.

Voici mon script test_param.bat :
vt1.png

Les deux paramètres passés dans le job:
vt2.png

Le résultat dans le fichier log.

vt3.png

Mes deux paramètres sont éclatés en 2 fois 2 dû à l’espace entre param et 1 et entre param et 2.

Comment éviter ce problème ?
J’ai essayé encadré avec des guillemets ou en remplaçant l’espace par %20 (son code acsii), mais en vain.
Existe-t- il un caractère de protection ?

Vous trouverez un extrait de la queue batch wnt utilisée qui est la version standard.

echo.
 :argloop
 shift
 if "%0"=="" goto argend
 set arg=%arg% %0
 goto argloop
 :argend
call "%TOM_SCRIPT%" %arg%

Ce problème n’existe pas sous Linux

Solution :

Pour obtenir le résultat escompté, il faut commenter toute la section argloop et remplacer :

call "%TOM_SCRIPT%" %arg%

par

call "%TOM_SCRIPT%" %TOM_SCRIPT_ARGS%

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *