有很多与此相关的Stack Overflow文章,但没有直接答案。
此命令将输出一堆单词
OutputVariable.exe %FILEPATH%
输出:
Mary had a little lamb
在批处理文件中,这是如何将输出变为变量
for /f %%i in ('OutputVariable.exe %FILEPATH%') do SET SENTENCE=%%i
ECHO %SENTENCE%
输出:
Mary
通常,FOR
命令在空格处断开。救命啊!
答案 0 :(得分:2)
for /f "delims=" %%i in ('OutputVariable.exe %FILEPATH%') do SET "SENTENCE=%%i"
ECHO %SENTENCE%
; , = <space> <tab>
是批处理中的标准分隔符,for /f
结果会自动将它们拆分。要停用分隔符,您需要在"delims="
选项中for /f
。
答案 1 :(得分:0)
我建议:
@echo off
for /f "tokens=*" %%i in ('OutputVariable.exe %FILEPATH%') do SET SENTENCE=%%i
ECHO %SENTENCE%