Batch files : How to leave the console window open
At here:
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
Take a look what are you doing:
- (cmd /K) Start a NEW cmd instance.
- (& pause) Pause the CURRENT cmd instance.
How to resolve it? well,using the correct syntax, enclosing the argument for the new CMD instance:
cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"
If that is really all the batch file is doing, remove the cmd /K
and add PAUSE
.
start /B /LOW /WAIT make package
PAUSE
Then, just point your shortcut to "My Batch File.bat"
...no need to run it with CMD /K
.
UPDATE
Ah, some new info...you're trying to do it from a pinned shortcut on the taskbar.
I found this, Adding Batch Files to Windows 7 Taskbar like the Vista/XP Quick Launch, with the relevant part below.
- First, pin a shortcut for
CMD.EXE
to the taskbar by hitting the start button, then type "cmd" in the search box, right-click the result and chose "Pin to Taskbar".- Right-click the shortcut on the taskbar.
- You will see a list that includes "Command Prompt" and "Unpin this program from the taskbar".
- Right-click the icon for
CMD.EXE
and selectProperties
.- In the box for Target, go to the end of
"%SystemRoot%\system32\cmd.exe"
and type" /C "
and the path and name of the batch file.
For your purposes, you can either:
Use
/C
and put aPAUSE
at the end of your batch file.OR
- Change the command line to use
/K
and remove thePAUSE
from your batch file.