FOR /f %%F IN ('dir /b /s "%DeploymentDirectory%\Run.*.dll"') DO ECHO %%F
问题是 返回的路径dir
有空格,只显示部分路径。如何修复才能显示完整路径?
答案1
您需要设置用于将行拆分为标记的分隔符,以便不包含空格。类似于“delims=?”,紧跟在 /f 之后。只需使用文件名中非法的字符(? 和 * 是不错的选择)
FOR /F "delims=?" %%F in ('dir /b /s "%Dir%\Run.*.dll"') DO ECHO "%%F"
只需记住在实际命令中用双引号括住 %%F,因为扩展变量中也会有空格。
答案2
为什么在这里需要迭代dir
的输出?只需使用
for /r %%F in ("%DeploymentDirectory%\Run.*.dll")
还不够吗?
答案3
将分隔线设置为行的开始和结束
for /f "delims=" %%F
ETC