batch file:如何打开控制台窗口

我有两个batch file,其中一个执行另一个,即

  1. “我的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的快速启动 ,下面的相关部分。

  1. 首先,通过点击开始button将CMD.EXE的快捷方式固定到任务栏,然后在search框中input“cmd”,右键单击结果并select“Pin to Taskbar”。
  2. 用鼠标右键单击任务栏上的快捷方式。
  3. 您将看到一个包含“ 命令提示符 ”和“ 从任务栏中取消固定该程序 ”的列表。
  4. 用鼠标右键单击CMD.EXE的图标,然后selectProperties
  5. 在“目标”框中,转到"%SystemRoot%\system32\cmd.exe"的末尾,然后键入" /C "以及batch file的path和名称。

为了您的目的,您可以:

  1. 使用/C并在你的batch file的末尾放一个PAUSE

    要么

  2. 将命令行更改为使用/K并从batch file中删除PAUSE

在这儿:

 cmd.exe /k "<SomePath>\<My Batch File>.bat" & pause 

看看你在做什么:

  1. (cmd / K)开始一个新的 cmd实例。
  2. (&暂停)暂停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 

我只是按回车键入暂停,它工作正常