gpt4 book ai didi

windows - 如何将批处理脚本中循环的每次迭代发送到新的 cmd 窗口并继续循环

转载 作者:可可西里 更新时间:2023-11-01 10:46:22 30 4
gpt4 key购买 nike

免责声明:我是工程师而不是程序员,所以虽然我有技术知识,但如果我使用了错误的术语或提出了错误的问题,请多多包涵。

我正在尝试编写一个 Windows 批处理脚本,它允许我将多个有限元模拟作为具有所有相同设置的批处理提交。我目前有一个脚本可以在时尚之后运行,但它没有我想要的那么高效。我当前的脚本遍历目录并在命令窗口中运行模拟,然后移动到下一个目录并重复循环。该脚本如下所示:

@ECHO OFF

SETLOCAL ENABLEDELAYEDEXPANSION

title BEST FRM Runs batch submission

echo This script will step through the run# directories and run the blast.k file in each run# folder. The .cmd file needs to be placed in the "FRMRuns" directory. You may need to change the reference to the LSDYNA solver if the version has changed.

SET /P ANSWER=Do you want to continue (y/n)?
if /i {%ANSWER%}=={y} (goto :yes)
if /i {%ANSWER%}=={n} (goto :no)

:yes
SET /P i=Enter input file name (e.g blast.k)
SET /P n=Enter number of CPUs (e.g. 2)
SET /P m=Enter memory (e.g 500m)
FOR /D %%D IN (run*) DO (
echo %%D
cd %%D
set lstc_license=network
set lstc_license_server=###.##.##.##
::the solver reference may need to be changed as we move on to new versions
c:\LSDYNA\program\ls971_s_R5.1.1_winx64_p.exe i=%i% ncpu=%n% memory=%m%
cd ..
)
exit /b

:no
exit /b

我们的 LSDYNA 网络许可允许作业排队,因此理想情况下,我希望运行整个循环并让作业同时运行,而不是一个接一个地运行。我认为如果我可以将循环的每次迭代发送到一个新的命令窗口并让它在批处理脚本中的循环继续时独立执行,这将是可能的。

我不确定我是否在搜索错误的东西,或者这是否是一个独特的请求,但我无法找到任何对我正在尝试做的事情真正有帮助的东西。我已经尝试使用 start/b cmd/k 进行各种操作,但无法将循环命令传递到新窗口并让循环在原始窗口中继续。我设法让新窗口打开,但没有实际执行任何命令,并且代码在新窗口关闭之前不会继续。

如果您对如何实现我的目标有任何建议,我将不胜感激。

谢谢!

最佳答案

这会在它自己的进程中启动每个命令,开头是 start ""

start "" c:\LSDYNA\program\ls971_s_R5.1.1_winx64_p.exe i=%i% ncpu=%n% memory=%m%

关于windows - 如何将批处理脚本中循环的每次迭代发送到新的 cmd 窗口并继续循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23496663/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com