Désolé, je suis nouveau dans ce domaine. Je voudrais exécuter dans une certaine séquence le même fichier bat avec des paramètres différents. J'ai écrit un fichier batch très simple:
@echo off
REM Note: to see all command line usage options, run bsearch_headless.bat without any arguments.
call behaviorsearch_headless.bat -p test_behaviorsearch.bsearch -o pippo
ECHO
IF EXIST pippo.finalBests.csv (call behaviorsearch_headless.bat -p test_behaviorsearch.bsearch -o topolino)
else goto :eof
:eof
ECHO Simulatione End!
PAUSE
Cela ne fonctionne pas car else
n'est pas reconnu.
Un grand merci pour toute aide!
Dans la documentation if
de la ligne de commande (via help if
ou disponible sur TechNet également).
La clause ELSE doit figurer sur la même ligne que la commande après le IF. Par exemple:
IF EXIST filename. ( del filename. ) ELSE ( echo filename. missing. )
Ce qui suit NE FONCTIONNERA PAS, car la commande del doit être terminée par une nouvelle ligne:
IF EXIST filename. del filename. ELSE echo filename. missing
Les opérations suivantes ne fonctionneraient pas non plus, car la commande ELSE doit figurer sur la même ligne que la fin de la commande IF:
IF EXIST filename. del filename. ELSE echo filename. missing
Donc, votre script fonctionnerait si vous remplaçiez
IF EXIST pippo.finalBests.csv (call behaviorsearch_headless.bat -p test_behaviorsearch.bsearch -o topolino)
else goto :eof
Avec
IF EXIST pippo.finalBests.csv (call behaviorsearch_headless.bat -p test_behaviorsearch.bsearch -o topolino) else goto :eof
OU
IF EXIST pippo.finalBests.csv (
call behaviorsearch_headless.bat -p test_behaviorsearch.bsearch -o topolino
) else (
goto :eof
)
J'espère que cela pourra aider.
ifelf.cmd:
@ECHO OFF
@IF EXIST "C:\boot.ini" (
@ECHO WoW! It may be M$Windows!
) ELSE (
@ECHO Boot.ini Lost! My precious! Stolen!
)
@ECHO .
@ECHO Wait 10 sec ...
@ping 127.0.0.1 -n 10 > NUL