664 votes

Comment empêcher la fermeture automatique de la console après l'exécution d'un fichier batch ?

Quelle commande puis-je mettre à la fin d'un fichier batch pour empêcher la fermeture automatique de la console après l'exécution du fichier ?

6 votes

Ce serait bien s'il y avait un moyen de détecter si un fichier .cmd a été lancé par un double-clic dans l'explorateur (alors vous voulez qu'il fasse une pause à la fin) ou s'il a été lancé par une ligne de commande déjà ouverte. Dans ce dernier cas (et surtout s'il est exécuté par un autre programme), vous ne voulez pas de pause. Je n'ai pas trouvé de bonne solution pour ce cas (et j'utilise généralement une variable if %NOPAUSE%, mais cela ne fonctionne que pour les programmes parents, pas pour les shells paremt).

1 votes

1voto

Wei Kleeff Points 103

Facile, ajoutez cmd à votre dernière ligne de bat, MAIS ! si vous réinitialisez ou effacez votre chemin système, vous devez commencer votre cmd avec le chemin complet, comme :

%windir%\system32\cmd.exe

Par exemple, j'ai un fichier bat pour réinitialiser jdk à l'ancienne version comme ceci :

PATH=C:\Program Files\Java\jdk1.6.0_45\bin;C:\apache-ant-1.7.1\bin
SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_45
%windir%\system32\cmd.exe

depuis que j'ai réinitialisé le chemin du système, je dois exécuter cmd avec le chemin complet, ou le système ne peut pas trouver cmd.exe, il échouera à exécuter cmd, et fermera juste la fenêtre, et vous ne pouvez pas voir le msg d'erreur.

0voto

appqui-platform Points 1165

cmd /k cd C:\Projects.....

Si vous voulez que votre commande s'ouvre à un emplacement spécifique, long.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X