J'ai un script qui traite certaines options de ligne de commande et j'aimerais qu'il gère également / ? et - ? Ce dernier fonctionne bien, mais lorsque j'utilise / ? j'obtiens le call help spew et je n'appelle jamais le sous-programme. J'ai fait quelques recherches ici, mais je n'ai rien trouvé de spécifique à ce problème dans les nombreux résultats.
Voici ce que j'ai pu faire de plus simple :
@setlocal ENABLEEXTENSIONS
@set prompt=$G
call :ProcessArgs %*
@exit /b 0
:ProcessArgs
@echo %*
@exit /b 0
Lorsqu'il est appelé avec - ?, tout va bien, mais / ? donne lieu à :
>call :ProcessArgs /?
Calls one batch program from another.
CALL [drive:][path]filename [batch-parameters]
batch-parameters Specifies any command-line information required by the
batch program.
...
Cela me semble être un bug, mais je doute que je découvre de nouveaux bugs dans cmd.exe sur ma machine Win10. L'utilisation de guillemets autour de %* permet d'éviter le déversement d'aide, mais a également pour conséquence que :ProcessArgs reçoit un seul argument, ce que je ne souhaite absolument pas.
Tout indice ou solution de contournement serait grandement apprécié.
Nous vous remercions.