Vous ne pouvez pas – l'exécution d'un fichier batch avec l'invite de commande intégrée va garder une fenêtre ouverte jusqu'à ce que le fichier batch se termine.
Ce que vous pouvez faire est de prendre des mesures pour vous assurer que le fichier batch se termine aussi vite que possible. Si possible, modifiez le fichier batch pour exécuter n'importe quel programme avec la commande start
. Par défaut, start
revient immédiatement sans attendre que le programme se termine, de sorte que le fichier batch continuera à s'exécuter et, vraisemblablement, se terminera immédiatement. Ajoutez à cela le fait que la modification de votre raccourci pour exécuter le fichier batch est minimisée, et vous ne verrez que la barre des tâches clignoter sans même voir une fenêtre à l'écran.
Une mise en garde s'impose : si vous exécutez un programme en mode console, ce qui est le cas de nombreux interprètes de script, le fichier batch attendra que le programme se termine, et l'utilisation de start
fera apparaître une nouvelle fenêtre de console. Dans ce cas, vous devez exécuter la version Windows de l'interpréteur au lieu de la version console – pas de start
nécessaire. Pour Perl, vous lanceriez wperl.exe
au lieu de perl.exe
. Pour Python, c'est pythonw.exe
au lieu de python.exe
. L'ancienne distribution Ruby win32 que j'ai téléchargée a rubyw.exe
, qui devrait faire la même chose.
Une dernière possibilité est d'utiliser un outil tiers pour exécuter l'invite de commande avec une fenêtre cachée. J'ai entendu parler de ce genre de choses mais je n'en ai jamais eu l'utilité, donc je ne connais rien de particulier qui puisse vous indiquer la marche à suivre.