J'ai un fichier chauve-souris comme celui-ci:
ipconfig
Cela imprimera les informations IP à l'écran, mais avant que l'utilisateur ne puisse lire ces informations, CMD se ferme.
Je crois que CMD suppose que le script est terminé, donc il se ferme.
Comment garder CMD ouvert une fois le script terminé?
batch-file
cmd
Pattyd
la source
la source
pause
ce qui est une bonne solution de contournement (et c'est pourquoi j'ai voté pour cette réponse) mais pas celle qui résout vraiment le problème car après que l'utilisateur frappeEnter
ouSpace
la fenêtre se ferme. ..Réponses:
Selon la façon dont vous exécutez la commande, vous pouvez mettre
/k
aprèscmd
pour garder la fenêtre ouverte.Le simple fait d'ajouter
cmd /k
à la fin de votre fichier batch fonctionnera également. Merci à Luigi D'Amico qui a posté à ce sujet dans les commentaires ci-dessous.la source
cmd /k
à la fin.Mettez
pause
à la fin de votre fichier .BAT.la source
Ajoutez simplement
@pause
à la fin.Exemple:
Ou vous pouvez également utiliser:
la source
@pause
etpause
peut être vue visuellement dans cette réponse: stackoverflow.com/questions/17957076#60053224Ajouter
pause
de (Windows 7) à la fin n'a pas fonctionné pour moi,mais l'ajout du
cmd /k
devant ma commande a fonctionné.Exemple :
la source
Lorsque le fichier .bat est démarré, pas à partir de la ligne de commande (par exemple, double-clic).
la source
start cmd /k
a fait la magie pour moi. Je l'ai en fait utilisé pour préparer l'application cordova phonegap, il exécute la commande, affiche le résultat et attend que l'utilisateur la ferme. Voici l'exemple simpleCe que j'ai utilisé dans mon cas
Mettre à jour
Vous pourriez même avoir un titre pour cela en utilisant
start "My Title" echo Hello, World!
la source
Si vous démarrez le script dans la ligne de commande, ajoutez
exit /b
pour garder CMD ouvertla source
ipconfig
et d'autres fichiers batch intégrés sont une très mauvaise idée .Dans Windows, ajoutez «& Pause» à la fin de votre commande dans le fichier.
la source
J'étais également confus quant à la raison pour laquelle nous ajoutons un
cmd
au début et je me demandais si je devais ouvrir l'invite de commande en premier. Ce que vous devez faire est de taper la commande complète aveccmd /k
. Par exemple, supposons que le nom de votre fichier de commandes est "ma_commande.bat" qui exécute la commande,javac my_code.java
le code de votre fichier de commandes doit être:Donc, fondamentalement, il n'est pas nécessaire d'ouvrir l'invite de commande dans le dossier actuel et de taper la commande ci-dessus, mais vous pouvez enregistrer ce code directement dans votre fichier de commandes et l'exécuter directement.
la source
la deuxième commande ne ferme pas la fenêtre cmd. L'important est que vous puissiez toujours saisir une nouvelle commande
la source
En passant, cela fonctionne également lors de l'exécution d'une commande directement à partir de la barre de recherche dans Windows.
Par exemple, l'exécution
ipconfig
directe fermera directement la fenêtre cmd après la sortie de la commande.Utiliser
cmd \k <command>
ne sera pas - c'est ce que j'essayais de faire quand j'ai trouvé cette réponse.Il a l'avantage supplémentaire de toujours reconnaître la commande que vous essayez d'exécuter. Par exemple, courir à
echo hello world
partir de la barre de recherche ne fonctionnera pas car ce n'est pas une commande, maiscmd \k echo hello world
fonctionne très bien.la source