繁体   English   中英

从另一个 cmd.exe 提示符中创建一个新的 cmd.exe 窗口

[英]Create a new cmd.exe window from within another cmd.exe prompt

我正在设置 CruiseControl.NET。 我遇到的问题是我将 CC 作为控制台应用程序运行,当我的构建成功完成并执行(使用 exec)时,它会在 CruiseControl DOS 提示符下启动它。 我只是使用简单的批处理文件来启动我的应用程序,但让它在与 CC 相同的提示符下运行导致 CC 认为只要我的应用程序运行,构建就会继续。

cmd.exe是否有命令行参数会产生另一个单独的提示窗口?

我认为这有效:

start cmd.exe

这是您需要的代码:

start cmd.exe @cmd /k "Command"

只需在命令提示符下键入start

start

这将打开新的cmd窗口。

start cmd.exe 

打开一个单独的窗口

start file.cmd 

打开批处理文件并在另一个命令提示符下执行它

您可以从命令提示符处键入以下 3 个命令:

  1. start

  2. start cmd

  3. start cmd.exe

START "notepad.exe"
echo Will launch the notepad.exe application
PAUSE

要制作任何 cmd 文件类型,您只需将内容保存为 .bat,即

@echo
TITLE example.bat
PAUSE
taskkill/IM cmd.exe

把它变成一个“example.bat”文件,保存它,然后打开它并运行。

简单的写入你的bat文件

@cmd

或者

@cmd /k "command1&command2"

如果我们简单地使用start命令或start cmd.exe ,它会打开 cmd。

如果要打开相同的命令提示符窗口;

start "Command Prompt"

我还尝试在 CCNET 任务结束时执行运行守护进程/服务器的批处理文件; 使 CruiseControl 生成一个独立的异步进程而不等待进程结束的唯一方法是:

  1. 创建一个批处理文件来运行守护进程(服务器应用程序)
  2. 使用任务调度程序将批处理文件作为 CCNET 任务运行(使用 schtasks.exe)

     schtasks.exe /create /F /SC once /ST 08:50 /TN TaskName /TR "c:/path/to/batchFileName.bat"
    • 08:50 是 HH:MM 时间格式

您可能需要在 ccnet 开始时终止该进程

PS:使用“start cmd.exe”选择的答案不起作用; 确实生成了一个新的命令提示符,但 CCNET 将等待生成的 cmd 完成。

launch_stack.bat 将打开 2 个窗口来运行您的 alices.bat 和 bobs.bat

start alices.bat
start bobs.bat

您可以在命令行中编写此命令

cmd

上一个命令将在当前命令行with new session

或者

start

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM