如何使用启动命令通过批处理脚本更改命令窗口的颜色

我正在运行一些小批量脚本来使用robocopy将数据从一个位置复制到另一个位置

下面贴了一个样本。

我需要做的每个这些batch file是让它打开并运行列出(它正在做)的robocopy命令,但我需要robocopy输出窗口在每个batch file设置的颜色

batch file读取如下启动robocopy.exe“source”“destination”/ MIR /Log:e:\outputlog.txt / TEE

启动robocopy.exe“source”“destination”/ MIR /Log:e:\outputlog.txt / TEE

启动robocopy.exe“source”“destination”/ MIR /Log:e:\outputlog.txt / TEE

以上都将立即运行,这是好的,但我不能让robocopy窗口改变颜色。 (上面的3是一个颜色很好,我们将运行另一个batch file如上,但用不同的颜色来区分副本)

这甚至是可能的。

我知道CMD命令可以有一个颜色的变化,但只适用于该窗口。 随着robocopy命令打开一个新窗口,颜色设置不会传递,

任何帮助或想法,将不胜感激。 我们需要保持代码简单,因为不同的用户需要使用它

cmd可以带一个/ T参数来指定颜色。 例如: start cmd /T:5A启动一个新的命令窗口与紫色(5)背景和浅绿色文本(A)

您可以使用/ C或/ K在新实例中启动一个新命令(C在完成时终止)

start cmd /T:5A /K robocopy...应该这样做

如果您将2个单独的robocopys制作成批处理文件,则可以更改颜色。

—- bat1.cmd

 color 71 robocopy.exe "source" "destination" /MIR /Log:e:\outputlog.txt /TEE 

—- bat2.cmd

 color 75 robocopy.exe "source" "destination" /MIR /Log:e:\outputlog.txt /TEE 

那么你原来的事情呢

 call bat1.cmd call bat2.cmd 

这不适合你吗?