在批处理脚本中进行循环后不打印任何内容

Not printing anything after for loop in a batch script

下面是我的批处理脚本,它没有执行 for 循环结束后的行。它不是 print echo end 或之后的行。 asciidoctor-pdf C:\Users\abc\Conversion_to_PDF\OutputFiles\*.adoc 行导致了它。但是我不确定是什么问题。

@echo off

echo # Starting job

java -jar C:\Users\abc\Conversion_to_PDF\swagger2markup-cli-1.3.1.jar convert -i C:\Users\abc\Conversion_to_PDF\HIP-ProviderManagement-1.0.0-swagger.json -d C:\Users\abc\Conversion_to_PDF\OutputFiles

chdir /d C:\Users\abc\Conversion_to_PDF\OutputFiles

for %%A in (*.adoc) do (
asciidoctor-pdf C:\Users\abc\Conversion_to_PDF\OutputFiles\*.adoc
echo %%A
)
echo # end
C:\Users\abc\Downloads\sejda-console-3.2.3\bin\sejda-console merge -f C:\Users\abc\Conversion_to_PDF\OutputFiles\*.pdf -o C:\Users\abc\Conversion_to_PDF\OutputFiles\merged.pdf

你需要

call asciidoctor-pdf ....

因为 asciidoctor-pdf 是一个批处理文件。 call 表示 "execute this, then return to the next statement"。没有调用,它意味着"go to this batchfile"并且不是告诉return原来的("caller")