检查是否按下了 CTRL-C 或批量等待同意

Check if CTRL-C pressed Or batch wait for agreement

我需要知道如果在其他命令 window 中打开的第二个批处理文件已停止(等待参数或处理不成功),我该如何签入批处理文件。

@echo off
:loop
start /wait rapidminer-batch.bat -f C:\Users\AHM-PC\Documents\ccc.rmp
echo cmd stopped
pause
goto loop

当调用批次结束时,它return将值设为errorlevel。它适用于 call,不知道是否也适用于 start

if %errorlevel% gtr 0 (
    echo failed
) else (
    echo success)

或在您调用的批处理中调用 exit /b <number of error>,以获得 return 特定值。查看 exit 了解更多详情。

提供批间通信的正常方法是 flag file

要么在主例程中 create 标记文件并等待 started 例程删除它,要么等到 started 批处理创建一个文件,然后删除它。

例如

echo.>myflag.txt
start anotherbatch.bat
:loop
timeout /t 1 >nul
if exist myflag.txt goto loop

在这里,批次将等到 myflag.txt 被删除,这就是您在第二批中所做的。您所需要的只是让两个例程就要使用的文件名达成一致。