我有这段代码,它读取文件的内容并设置变量中的所有内容。
for /f "tokens=1,*" %%h in ('type C:\user\userfiles\title.txt') do (
set title=%%h
)echo %title%
title.txt的示例内容
AAAA BBBB CCCC
现在,它始终在第一个空格之前显示该单词。如何以变量标题?
显示文件的所有内容答案 0 :(得分:2)
您需要指定FOR
参数中不应包含分隔符,否则将使用空格并仅获取第一个值:
REM Pick up a single token with no delimiters.
REM This will read the entire line of the file.
for /f "usebackq tokens=* delims=" %%h in (`type "C:\user\userfiles\title.txt"`) do set title=%%h
echo %title%
请注意,如果文件有多行,则只有 last 行将设置为%title%
变量。
如果您想转而使用%title%
的结果作为程序的参数,请确保将其放在引号中,因为它可能包含空格:
SomeProgram.exe "%title%"