J'ai deux fichiers de commandes, l'un d'eux en exécute un autre, c'est-à-dire.
J'ai créé un raccourci du premier fichier batch et modifié ses propriétés pour l'appeler de la manière suivante.
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
Ce que je veux faire Je veux que la fenêtre de la console soit ouverte après l'exécution du fichier de traitement par lots. Maintenant, il se ferme, a essayé de jouer autour des drapeaux cmd, aucun résultat.
Plate-forme: Windows7
MISE À JOUR 1
La structure modifiée, l’exemple simple comme celui-ci ne fonctionne pas aussi bien, Un seul fichier de commandes, c’est-à-dire qu’il n’existe pas de 2. "Quelque autre fichier de commandes" Le seul fichier de commandes contient un tel fichier.
start /B /LOW /WAIT make package
cmd /K
MISE À JOUR 2
Le même raccourci qui est appelé à partir d’Explorateur ne ferme pas la fenêtre de la console . Mais la fenêtre de la console se ferme lorsque le raccourci est appelé à partir de l’élément bloqué dans la barre des tâches
Des idées sur la façon de garder la fenêtre de la console ouverte?
Si c'est vraiment le cas du fichier de commandes, supprimez le cmd /K
et ajoutez PAUSE
.
start /B /LOW /WAIT make package
PAUSE
Ensuite, pointez simplement votre raccourci sur "My Batch File.bat"
... inutile de l'exécuter avec CMD /K
.
Ah, quelques nouvelles informations ... vous essayez de le faire à partir d'un raccourci épinglé dans la barre des tâches.
J'ai trouvé ceci, Ajout de fichiers de traitement par lots à la barre des tâches de Windows 7, comme le lancement rapide de Vista/XP , avec la partie correspondante ci-dessous.
- Commencez par épingler un raccourci pour
CMD.EXE
dans la barre des tâches en appuyant sur le bouton Démarrer, puis tapez "cmd" dans la zone de recherche, faites un clic droit sur le résultat et choisissez "Épingler à la barre des tâches".- Cliquez avec le bouton droit sur le raccourci dans la barre des tâches.
- Vous verrez une liste comprenant "Invite de commandes" et "Supprimer le programme de la barre des tâches".
- Cliquez avec le bouton droit sur l'icône pour
CMD.EXE
et sélectionnezProperties
.- Dans la zone Cible, allez à la fin de
"%SystemRoot%\system32\cmd.exe"
et tapez" /C "
, ainsi que le chemin et le nom du fichier batch.
Pour vos besoins, vous pouvez soit:
Utilisez /C
et mettez une PAUSE
à la fin de votre fichier de commandes.
OU
/K
et supprimez la PAUSE
de votre fichier de commandes.Ici:
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
Regardez ce que vous faites:
Comment le résoudre? bien, en utilisant la syntaxe correcte, en incluant l’argument de la nouvelle instance CMD
cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"
Je viens d'écrire la dernière ligne comme Pause cela fonctionnait bien avec .bat et .cmd . Il affichera également le message «Appuyez sur n'importe quelle touche pour continuer».
Dans la dernière ligne du fichier de commandes que vous voulez garder ouverte, mettez un
pause >nul
Pour laisser la fenêtre de la console ouverte, il vous suffit d'ajouter à la dernière ligne de commande du fichier batch:
' & pause'
Vous pouvez simplement mettre un pause
commande dans la dernière ligne de votre fichier de commandes:
@echo off
echo Hey, I'm just doing some work for you.
pause
Vous donnera quelque chose comme ceci en sortie:
Hey, je fais juste du travail pour vous.
Appuyez sur n'importe quelle touche pour continuer ...
Remarque: L'utilisation de @echo empêche la sortie de la commande avant l'impression de la sortie.
rem Just use "pause" at the end of the batch file.
...
......
.......
pause