Batch file 如何将命令的结果附加到CMD中的日志文件名?
我正在查询文档中的页数并输出到日志文件。但是,我实际上需要日志文件名中的页数。 以下是一个虚构的示例: “组合命令-获取文档中的页数”>logfile_++pages.txtBatch file 如何将命令的结果附加到CMD中的日志文件名?,batch-file,cmd,Batch File,Cmd,我正在查询文档中的页数并输出到日志文件。但是,我实际上需要日志文件名中的页数。 以下是一个虚构的示例: “组合命令-获取文档中的页数”>logfile_++pages.txt 我想出来了。可能很笨重,但很有效 “c:\ProgramFiles(x86)\gs\gs8.70\bin\gswin32c“-q-dNoDisplay-c”(u:/path/121803.pdf)(r)文件runpdfbegin pdfpagecount=quit”>b:\121803.txt set/p myvar=b:
我想出来了。可能很笨重,但很有效 “c:\ProgramFiles(x86)\gs\gs8.70\bin\gswin32c“-q-dNoDisplay-c”(u:/path/121803.pdf)(r)文件runpdfbegin pdfpagecount=quit”>b:\121803.txt set/p myvar=b:\121803page%myvar%.txt
输出为121803page94.txt
请改进代码的格式(例如换行符),我唯一搞不清楚的是在批处理模式下运行。由于某些原因,使用Setlocal EnableDelayedExpressions时,无法识别我的set/p mvar。即使将我的var设置为!迈瓦尔!在文件名中。有什么想法吗?此外,我正在运行上述示例的多行,并注意到前一个myvar结果正在带入下一行,因此我的文件名显示了从文本文件读取到前一个myvar变量的页码。