Java 如何识别进程而不运行批处理文件的其余部分

Java 如何识别进程而不运行批处理文件的其余部分,java,windows,batch-file,ant,process,Java,Windows,Batch File,Ant,Process,我使用以下代码检查是否存在具有特定名称的java进程 for /f "tokens=1" %i in ('jps -m ^| find "TouchPosApplication"') do ( EXIT /B ) 如何将其用作if条件而不是迭代。即使没有名为这样的进程,该命令也会退出批处理代码。这个代码有什么问题吗 这是我的整个批处理脚本 start start-chrome.bat for /f "tokens=1" %i in ('jps -m ^| find "TouchPosAppli

我使用以下代码检查是否存在具有特定名称的java进程

for /f "tokens=1" %i in ('jps -m ^| find "TouchPosApplication"') do ( EXIT /B )
如何将其用作if条件而不是迭代。即使没有名为这样的进程,该命令也会退出批处理代码。这个代码有什么问题吗

这是我的整个批处理脚本

start start-chrome.bat
for /f "tokens=1" %i in ('jps -m ^| find "TouchPosApplication"') do ( EXIT /B )
ant main

我在打电话,所以不能测试,但是

goto label
将跳转到并执行ant main,而goto finish将结束程序

label:
ant main
finish:

另外,我不记得批处理接受单引号,它们实际上是撇号。

不幸的是,脚本退出时没有发生任何事情。即使没有进程名称,批也存在。它在控制台中打印出我此时意外写入%%i而不是%i。。。。撇号是for语法的一部分。
set var=False
start start-chrome.bat
for /f "tokens=1" %%i in ('jps -m ^| find "TouchPosApplication"') do set var=True

if "%var%"=="True" (
Echo Found
) else (
ant main
)