У меня есть пакетный файл, который помогает мне в установке несколько частей программного обеспечения от совместно используемой папки.
Это работает хорошо с программным обеспечением, имена которого не содержат пробелы, но мне нужен он для работы с программным обеспечением, делает.
этот код хорошо работает потому что thereis никакое пространство в названии программного обеспечения (firefox.exe):
for /f %%a in ('dir /s /b \\sharedfolder\*firefox*.exe') do %%a
если я пробующий тот же код программным обеспечением, которое имеет пространство на имя, оно не работает,
например, for /f %%a in ('dir /s /b \\sharedfolder\mozzila *firefox* 36.0.4.exe') do %%a
посмотрите на название программного обеспечения, и Вы поймете то, что я имел в виду.
Попробуйте что-то вроде этого:
for /f %a in ('/s /b \\sharedfolder\*firefox*.exe') do "%a"
Вы, кажется, удвоили свои % , и вам нужно указать переменную, чтобы она работала.
rem ↓↓↓↓↓↓↓↓↓
for /f "delims=" %%a in ('dir /s /b "\\sharedfolder\mozzila *firefox* 36.0.4.exe"') do (
rem ↓ ↓ note double quotes ↑ ↑
ECHO "%%a"
)
Объяснение :
"delims ="
параметр подавляет токенизация вывода dir / B
; ECHO "%% a"
: рабочая команда отображается только для целей отладки; удалите слово ECHO
не раньше чем отладка!