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 ?
Réponses
Trop de publicités?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.
- Réponses précédentes
- Plus de réponses
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
Il y a un moyen : stackoverflow.com/questions/3551888/