FOR /f %%F IN ('dir /b /s "%DeploymentDirectory%\Run.*.dll"') DO ECHO %%F
Проблема в том, что пути, возвращаемые dir
имеют пробелы, и отображается только часть пути. Как мне исправить, чтобы он отображал полный путь?
Вам нужно установить разделители, используемые для разделения строки на токены, чтобы не было пробелов. Что-то вроде "delims =?"«Сразу после / ф. Просто используйте символ, который недопустим в именах файлов (? и * хорошие кандидаты)
FOR /F "delims=?" %%F in ('dir /b /s "%Dir%\Run.*.dll"') DO ECHO "%%F"
Просто не забудьте поставить двойные кавычки вокруг %% F в ваших реальных командах, так как в расширенной переменной также будут пробелы.
Зачем вам вообще нужно перебирать вывод dir
, здесь? Просто используя
for /r %%F in ("%DeploymentDirectory%\Run.*.dll")
не хватает?
установить границы как начало и конец строки
for /f "delims=" %%F
так далее