执行可执行文件的多个实例并在 cmd 行中更改其输出文件名



我有一个可执行文件,需要使用Windows中的命令行在不同的进程中生成。我想更改名称"连接日期和进程编号"输出文件,这是一个文本文件。

这些实例是计算密集型的,因此需要很长时间。我们是否可以在每个进程中等待脚本并在该进程中重命名输出文件。

这是我所做的,但它似乎不起作用

@ECHO OFF
set progPath=%cd%
cd %progPath%
set nprs=3
for /l %%x in (1, 1, %nprs%) do ( start execMCS.exe ren output.txt  output%nprs%.txt );

我相信你想实现以下目标:

@echo off
cd /D "D:working_directory"
set "nprs=3"
for /L %%x in (1,1,%nprs%) do (
start "" cmd /C "execMCS.exe" ^& ren "output.txt" "output%%x.txt"
)

start启动一个应用程序,因此您不能声明多个应用程序,也不能声明cmd的内部命令。但是,您可以启动一个新的cmd实例,并在其中执行应用程序和内部命令(ren),由cmd内部&运算符连接。

您可能希望指定可执行文件的绝对路径,而不仅仅是其名称。

更改为存储在变量%CD%中的目录是没有意义的,因为这已经是当前的工作目录。这就是我更改cd命令行的原因。

最新更新