batch file:如何打开控制台窗口
我有两个batch file,其中一个执行另一个,即
- “我的batch file”> 2.“其他batch file”
我创build了第一个batch file的快捷方式,并编辑了它的属性,以下面的方式调用它。
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
我想要做什么我希望在batch file执行结束后打开控制台窗口。 现在只是closures,试图在cmd标志附近玩,没有结果。
平台:Windows7
更新1
修改结构,这样的简单的例子不起作用,只有一个batch file,即没有2.“一些其他batch file”唯一的batch file包含这样的smth
start /B /LOW /WAIT make package cmd /K
更新2
从资源pipe理器调用的同一个快捷方式不会closures控制台窗口。 但是当从任务栏上的固定项调用快捷方式时,控制台窗口closures
任何想法如何保持控制台窗口打开?
如果这真的是所有batch file正在做的,删除cmd /K
并添加PAUSE
。
start /B /LOW /WAIT make package PAUSE
然后,只需将你的快捷方式指向"My Batch File.bat"
…不需要运行与CMD /K
UPDATE
啊,一些新的信息…你试图从任务栏上固定的快捷方式。
我发现这一点, 添加batch file到Windows 7的任务栏,如Vista / XP的快速启动 ,下面的相关部分。
- 首先,通过点击开始button将
CMD.EXE
的快捷方式固定到任务栏,然后在search框中input“cmd”,右键单击结果并select“Pin to Taskbar”。- 用鼠标右键单击任务栏上的快捷方式。
- 您将看到一个包含“ 命令提示符 ”和“ 从任务栏中取消固定该程序 ”的列表。
- 用鼠标右键单击
CMD.EXE
的图标,然后selectProperties
。- 在“目标”框中,转到
"%SystemRoot%\system32\cmd.exe"
的末尾,然后键入" /C "
以及batch file的path和名称。
为了您的目的,您可以:
-
使用
/C
并在你的batch file的末尾放一个PAUSE
。要么
- 将命令行更改为使用
/K
并从batch file中删除PAUSE
。
在这儿:
cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause
看看你在做什么:
- (cmd / K)开始一个新的 cmd实例。
- (&暂停)暂停CURRENT cmd实例。
如何解决? 好吧,使用正确的语法,为新的CMD实例封装参数:
cmd.exe /k ""<SomePath>\<My Batch File>.bat" & pause"
我只写了最后一行,因为它暂停它与.bat和.cmd罚款。 它会显示消息也是“按任意键继续”。
在你想保持打开的batch file的最后一行放一个
pause >nul
要使控制台窗口保持打开状态,只需将其添加到batch file中的最后一个命令行即可:
' & pause'
你可以在你的batch file的最后一行放一个pause
命令 :
@echo off echo Hey, I'm just doing some work for you. pause
会给你这样的输出:
嘿,我只是为你做一些工作。
按任意键继续 …
注意:使用@echo防止在打印输出之前输出命令。
放在最后它会重新打开你的控制台
start cmd
我只是按回车键入暂停,它工作正常