对于/ f处理带空格的文件名

Hug*_*ing 16 filenames for-loop file batch-file

我想对文件的每一行进行一些处理.

for /f "delims=" %%i in ("%RF_PROPERTIES%") do (          
   echo %%i
)
Run Code Online (Sandbox Code Playgroud)

我的RF_PROPERTIES指向带空格的文件路径(c:\ program files\Arcot systems\conf\rf.properties).它抱怨说环境变量C:\ Program Files\Arcot没有定义,即使我已经提供了引号.如何让它工作?

Blo*_*ard 23

尝试添加usebackq选项:

for /f "usebackq delims=" %%i in ("%RF_PROPERTIES%") do (          
  echo %%i
)
Run Code Online (Sandbox Code Playgroud)

输出的解释for /?:

usebackq - 指定新语义有效,其中后引用字符串作为命令执行,单引号字符串是文字字符串命令,并允许使用 双引号引用文件集中的文件名.