在后台启动后续cmd窗口

时间:2018-02-05 18:08:15

标签: windows batch-file cmd

假设我有4个.cmd文件:1.cmd,2.cmd,3.cmd和4.cmd

我只允许修改1.cmd;

  • 1.cmd启动2.cmd;
  • 2.cmd启动3.cmd,
  • 2.cmd做了其他一些事情,
  • 2.cmd启动4.cmd

有没有办法告诉后续的.cmd文件在后台启动,从1.cmd?

提及:所有.cmd文件都有标题的公共部分,也用于一次性关闭所有标题。

以下代码用于关闭所有标题:

taskkill /IM cmd.exe /FI "WINDOWTITLE eq Common Piece of Title*"

P.S。我尝试使用/b,但只有2.cmd在后台进行,而3.cmd和4.cmd出现在我的屏幕上。

1 个答案:

答案 0 :(得分:0)

这是唯一真正的方式,不使用vbs等其他语言。

从技术上讲,它也不会在后台运行,只会最小化。

<强> 1.cmd

@echo off
start "" /min 2.cmd

2.cmd调用最小化,但也会导致其他批处理文件最小化运行,从2.cmd调用

然后,为了让1.cmd也最小化,请创建1.cmd的快捷方式,然后右键单击快捷方式,然后在properties区块中选择run选择最小化。

现在只需双击1.cmd,它就会将所有内容都最小化。

如果您可以使用vbs,那么只需创建一个名为hidden.vbs的文件并添加以下文字。您仍然需要从2.cmd

致电1.cmd
Set MyScript    = CreateObject("WScript.Shell")
MyScript.Run "C:\wherever\script\is\1.cmd", 0, False

然后你需要运行hidden.vbs来运行没有控制台的批处理文件。