我有一个可执行文件,需要使用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
命令行的原因。